| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
| |
- Change the cached mtime to a 'struct timespec' from a
time_t. Improving the precision of the cached mtime tightens up
NFS' "close-to-open" consistency considerably.
- Always force an over-the-wire consistency check from nfs_open()
(unless the file is marked modified). This further improves
NFS' "close-to-open" consistency.
Submitted by: Mohan Srinivasan mohans at yahoo-inc dot com
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add a vfs_cmount() function which converts omount argument stucture
to nmount arguments.
Convert vfs_omount() to vfs_mount() and parse nmount arguments.
This is 100% compatible with existing userland.
Later on, but before userland gets converted to nmount we may want
to revisit the names of the mountoptions, for instance it may make
sense to use consistent options for charset conversion etc.
|
|
|
|
|
|
|
|
|
| |
- Turn it off by default.
Requested by: many
Reviewed by: andre
Approved by: julian (mentor)
MFC after: 3 days
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
vnode EXCLUSIVE lock. This prevents threads from adding pages to
the vnode while an invalidation is in progress, closing potential
races. In the bioread() path, callers acquire the SHARED vnode lock
- so while an invalidate was in progress, it was possible to fault
in new pages onto the vnode causing the invalidation to take a while
or fail. We saw these races at Yahoo! with very large files+heavy
concurrent access. Forcing an upgrade to EXCLUSIVE lock before doing
the invalidation closes all these races.
Submitted by: Mohan Srinivasan mohans at yahoo-inc dot com
|
|
|
|
|
| |
note that the PCIe work was made possible due to hardware donations from
the FreeBSD Foundation and Intel. Thanks!
|
|
|
|
|
|
|
|
|
| |
vfs_flagopt() for binary/boolean options.
vfs_getopts() for string options
vfs_filteropt() to check for unknown options.
vfs_scanopt() for scanf() like processing of options.
Also add function for setting the stat.f_mntfromname field.
|
|
|
|
|
|
|
|
|
| |
socket callbacks or similar callers, from both the NFS client and the
server.
Instituted nfsm_dissect_nonblock(), nfsm_dissect_xx_nonblock(). And
nfsm_disct() now takes an extra M_TRYWAIT/M_DONTWAIT argument.
Submitted by: Mohan Srinivasan mohans at yahoo-inc dot com
|
|
|
|
|
|
| |
call it accordingly.
(No filesystems implement vfs_cmount() yet, so this is a no-op commit)
|
|
|
|
|
|
|
|
|
|
| |
is safe to turn off the nfsnode's NMODIFIED flag.
- Move the check for signals to the top of the loop where we loop
around the dirty buffers on the vnode, scheduling writes. This
ensures that we'll break ouf of the flush operation on reception of
a signal.
Submitted by: Mohan Srinivasan mohans at yahoo-inc dot com
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
administrator specified number.
The implementation in our version transmits extra zero byte that is a
violation of the Microsoft PPP Callback Control Protocol section 3.2[1].
This can lead to incorrect behavior on certain devices, as reported
in bin/50613.
Confirmed with: cbcp.c in ppp's cvs, rev. 1.4 and 1.15 [2]
Submitted by: Dmitry Pryanishnikov <dmitry at atlantis.dp.ua>
PR: bin/50613
[1] http://www.dsl.gr.jp/~manabe/PPxP/doc/Standards/draft-gidwani-ppp-callback-cp-00.txt
[2] http://cvs.samba.org/cgi-bin/cvsweb/ppp/pppd/cbcp.c
http://www.samba.org/cvs.html
|
|
|
|
|
|
| |
Partially initialized tm structure was passed into mktime(3).
Approved by: ru
|
| |
|
|\
| |
| |
| | |
which included commits to RCS files with non-trunk default branches.
|
| |
| |
| |
| |
| |
| |
| |
| | |
under #ifdef DEBUG. Merge of revision 1.45 by H. Stenn.
Done on the vendor branch to minimise future imports.
Reminded by: obrien
|
| |
| |
| |
| | |
the test. Privilege is required in order to allocate an md device.
|
| |
| |
| |
| | |
entire family at the end of the source file.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
then reads from a fairly broad range of object types: regular file,
fifo, UNIX socketpair, pty, UNIX pipe, and an md device. Not a deep
test of functionality, just a basic test that aio_write followed by
aio_read returns the correct data in a relatively timely manner.
Requested by: phk
|
| |
| |
| |
| | |
all listed authors, rightholders and contributors.
|
| |
| |
| |
| |
| |
| | |
Root filessytems (like NFS) don't have an associated disk device,
and even if they had, the exact semantics would be filesystem
dependent and should be implemented there.
|
| | |
|
| | |
|
| |
| |
| |
| | |
to match the code.
|
| | |
|
| |
| |
| |
| | |
so correct stale comment. The only SI_SUB_RAID consumer is gmirror right now.
|
| |
| |
| |
| | |
Reviewed by: ru
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| | |
for NFS locking.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
userland and a dedicated system call to get replies.
The vnode-bypass of fifos broke this into a panic.
Ditch all the magic and create a device /dev/nfslock instead, and
use that for both directions apart from the shorter path, this is
also faster because the device driver runs Giant free using the
vnode bypass.
Noticed by: marcel
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
actually is a property of the northbridge and applies to all PCI/PCI-X/PCIe
devices in the system, though only PCIe devices will respond to registers
higher than 256. This uses per-CPU pools of temporary mappings so that
the whole 256MB of configuration space doesn't have to be mapped all at
once. While the sf_buf API was considered for this, the fact that it
requires sleep locks and can return failure made it unsuitable for this use.
For now only the Intel Grantsdale and Lindenhurst (925 and 752x) chipsets are
supported. Since there doesn't appear to be a compatible way to determine
northbridge support, new chipsets will have to be explicitely added in the
future.
|
| |
| |
| |
| | |
Fix comment to match.
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
zero-copy receive of jumbo frames. This eliminates the need for the
jumbo frame allocator implemented in kern/uipc_jumbo.c and sys/jumbo.h.
Remove it.
Note: Zero-copy receive of jumbo frames did not work without these changes;
I believe there was insufficient locking on the jumbo vm object.
Tested by: ken@
Discussed with: gallatin@
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
properly support bounce buffers and resource shortages. This allows the
driver to work properly and reliably with more than 4GB of RAM. Of the
three data paths that exist in the driver, (block, CAM, ioctl), the ioctl
path has not been well tested with these changes due to difficulty with
finding an application that uses it that actually works.
Sponsored by: The FreeBSD Foundation and FreeBSD Systems, Inc.
|
| |
| |
| |
| |
| | |
PR: docs/44435
Submitted by: Slaven Rezic slaven dot rezic at berlin dot de
|
| |
| |
| |
| | |
Approved by: julian (mentor)
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
and annotate that nfs_mountroot assumes it is OK to step on the
values in the global NFSv3 diskless structure as the mountroot
function is called during a serialized part of the boot, before
any other NFS client activity occurs.
MFC after: 2 weeks
|
| |
| |
| |
| | |
now only conditionally protected by Giant based on debug.mpsafenet.
|
| |
| |
| |
| | |
memory for things such as the kernel stack.
|
| |
| |
| |
| |
| |
| | |
the tcptw undergo non-atomic read-modify-writes.
MFC after: 2 weeks
|
| | |
|
| |
| |
| |
| | |
a kernel thread.
|
| |
| |
| |
| | |
While I'm there, fix style.
|
| |
| |
| |
| |
| |
| |
| |
| | |
doesn't. Most of the implementations have grown weeds for this so they
copy some fields from mnt_stat if the passed argument isn't that.
Fix this the cleaner way: Always call the implementation on mnt_stat
and copy that in toto to the VFS_STATFS argument if different.
|