Age | Commit message (Collapse) | Author |
|
Parts from NetBSD;
OK blambert@;
tested by johan@, sthen@ and a few others.
|
|
From NetBSD.
ok thib@
|
|
operations (non-idempotent ones) under the assumption that the reply from
the server is for a duplicate of the original request.
However, most (all) NFS server today have a duplicate reply cache that
address this problem and these kludges have been shown to cause problems
with some applications (most notably dovecot as pointed out by brad@).
For more information:
http://lists.freebsd.org/pipermail/freebsd-current/2007-November/079961.html
And revision 1.277 of sys/nfsclient/nfs_vnops.c in FreeBSD.
Diff from rwatson@freebsd.org
OK blambert@, "no objections" krw@
tested by many;
|
|
and m_freem()'ing vice doing so only on the first packet.
From a similar change in NetBSD.
"yes please" thib@
|
|
(the latter only had it to pass it to nfsrv_fhtovp()).
appropriate cleanup also;
ok blambert@
|
|
ok thib@
|
|
len exceeds MLEN, not MINCLSIZE; inspired by a similar
commit from damien.
ok damien@, blambert@
|
|
power of two.
use arc4random_bytes() when requesting more than a word of PRNG
output.
ok deraadt@
|
|
allocate a mbuf cluster only if length is greater than MLEN
instead of MINCLSIZE.
ok blambert@, thib@
|
|
nfsm_uiotombuf():
- no meaningful return, function becomes void
- replace frankensteined uiomove/MGET with actual call to uiomove
nfsm_strtmbuf():
- no meaningful return, becomes void
- rename and reorder parameters to be consistent with other functions
- becomes wrapper to nfsm_uiotombuf
nfsm_buftombuf():
- new function; unused but slated for future use
- wrapper to nfsm_uiotombuf
As a bonus, making these functions void removes much unneeded code and
garbage collects `magic' variable t2 which was only used (invisibly)
by the macros from nfsm_subs.h
Preps the way for removing much more NFS goo...
testing by myself, thib@ and merdely@
ok thib@
|
|
it twice, makes this nicer as a bonus;
From NetBSD.
tested by johan@, ok blambert@.
|
|
booted from to the most precision; preferring the boot device, or if that
is not known, the root device
discussed with miod and reyk
tested by beck
|
|
ok miod
|
|
and add some to be able to support statvfs(2). Do the compat dance
to provide backward compatibility. ok thib@ miod@
|
|
More NFS-related kernel shrinkage...
When you use a macro ~200 times, it tends to bloat your code, so make a
function out of it.
Shaves ~8.5 kB from my kernel.
ok thib@, "looks good" krw@
In snaps for 1+ week with no negative reports.
|
|
When you use a macro ~200 times, it tends to bloat your code, so make a
function out of it.
Shaves ~8.5 kB from my kernel.
ok thib@, "looks good" krw@
In snaps for 1+ week with no negative reports.
|
|
as NULL, so make sure its non-NULL before attempting
to reference it.
Fixes PR5694; Confirmed by submitter.
OK art@, krw@
|
|
Use the va_blocksize, that is the blocksize of the underlying exported
file system instead of the DIRBLKSIZ constant to size the chunks.
Diff from Enache Adrian <3n4ch3@gmail.com>
Tested by myself and a few others.
|
|
was used as a part of the "old-style directory caching"
that was removed in 2001;
ok beck@, blambert@
|
|
shaves an insane (~8K) amount from an i386 kernel
ok thib@
|
|
make stat(2) return st_blocksize thats a bit closer
to reality.
From NetBSD;
OK art@, beck@, tedu@
|
|
ok thib@ 'emphatic' ok beck@
|
|
and nuke it's definition.
OK krw@, blamers@
|
|
nuke it's definition.
OK krw@, blambert@
|
|
#ifdef goo.
ok krw@, blambert@
|
|
ok beck@, blambert@
"Kill it. Kill it dead." krw@
|
|
make pretty.
ok krw@
|
|
variables, that are declared all over, since they are passed via macros
to nfs_rephead(); which doesn't do anything with it.
OK krw@
|
|
some spacing while there.
ok krw@
|
|
ok art@, blambert@
|
|
NQNFS leftover.
ok miod@,blambert@
|
|
authentication.
ok beck@
|
|
Cleanup and partly redo the way we create the RPC header, by having
nfsm_rpchead() do a bit more work. Right now this is pretty RPCAUTH_UNIX
centric, but since it is the only auth method we support right now thats
fine.
Make sure we can never generate a zero xid, thats forbidden by the RFC.
Misc cleanup.
tested by a few.
|
|
dependency on ELAST; ok miod thib
|
|
|
|
inline in the one place that it's called
ok thib@, weingart@
"I don't see why not" fgsch@
|
|
ok thib@ henning@ art@
|
|
Uneeded includes and casts...
ok krw@
|
|
ok thib@
|
|
(2 -> SHUT_RDWR in calls to soshutdown()).
From Iruata Souza.
ok deraadt@
|
|
prototypes.
(survived build/release on macppc/amd64).
ok pedro@
|
|
Prevents weird things from happening.
ok tedu@,pedro@
|
|
NQNFS leftover.
- Remove setting of the NFSMNT_DISMINPROG flag, its set
and unset in the same function servering no purpose,
im however going to reuse it shortly.
- kill an if thats always true (NFSMNT_KERB cant be set)
- misc cleanup and KNF.
ok beck@
|
|
smallish cleanup (move prototypes and externs togather).
ok toby@
|
|
ok pedro@
|
|
"ap = v" comments in under 8 seconds, so it must be ok. and it compiles
too.
|
|
Basically the usage of daddr_t was to math out arguments to
nfs_getcacheblk, wich calls getblk();
ok deraadt@
|
|
nfsv2 client case, this matches v3 behaviour to that extent.
This is to work around the fact that when the namecache is large, we
dont purge vnodes correctly out of it.
ok beck@,pedro@
|
|
some comments and style.
ok tedu@
|
|
ok beck@
|