]> CyberLeo.Net >> Repos - FreeBSD/stable/8.git/commit
MFC 209948:
authorjhb <jhb@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f>
Mon, 26 Jul 2010 18:54:56 +0000 (18:54 +0000)
committerjhb <jhb@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f>
Mon, 26 Jul 2010 18:54:56 +0000 (18:54 +0000)
commit7d0a5fe3e3e21f41f22eb10e00649e0ada465786
tree0a385926ec5f7fdd7c5adb197e49650e042b6dac
parent8a21308493a06e00c687963cae168dd6a4011e0b
MFC 209948:
A previous change moved the GETATTR RPC for open() calls that hit in the
name cache up into nfs_lookup() instead of nfs_open().  Continue this
trend by flushing the attribute cache for leaf nodes in nfs_lookup() during
an open() if we do a LOOKUP RPC.  For NFSv3 this should generally be a NOP
as the attributes are flushed before fetching the post-op attributes from
the LOOKUP RPC which most (all?) NFSv3 servers provide, so the post-op
attributes should populate the cache.

Now all NFS open() calls will always clear the cached attributes during the
nfs_lookup() prior to nfs_open() in the !NMODIFIED case to provide CTOC.
As a result, we can remove the conditional flushing of the attribute
cache from nfs_open().

git-svn-id: svn://svn.freebsd.org/base/stable/8@210512 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
sys/nfsclient/nfs_vnops.c