diff options
author | rmacklem <rmacklem@FreeBSD.org> | 2010-07-18 22:35:46 +0000 |
---|---|---|
committer | rmacklem <rmacklem@FreeBSD.org> | 2010-07-18 22:35:46 +0000 |
commit | 2408918606e89f8cab79b07feaa6da0cef14fd1a (patch) | |
tree | a085f936ff860a603f290a9e918aaf2909b39d98 /sys/fs | |
parent | 3e540217974c33a858d099e8b23a14382c6aaffa (diff) | |
download | FreeBSD-src-2408918606e89f8cab79b07feaa6da0cef14fd1a.zip FreeBSD-src-2408918606e89f8cab79b07feaa6da0cef14fd1a.tar.gz |
Add a call to nfscl_mustflush() in nfs_close() of the experimental
NFSv4 client, so that attributes are not acquired from the server
when a delegation for the file is held. This can reduce the number
of Getattr Ops significantly.
MFC after: 2 weeks
Diffstat (limited to 'sys/fs')
-rw-r--r-- | sys/fs/nfsclient/nfs_clvnops.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/fs/nfsclient/nfs_clvnops.c b/sys/fs/nfsclient/nfs_clvnops.c index 0ae54f0..bc623ed 100644 --- a/sys/fs/nfsclient/nfs_clvnops.c +++ b/sys/fs/nfsclient/nfs_clvnops.c @@ -709,7 +709,7 @@ nfs_close(struct vop_close_args *ap) /* * Get attributes so "change" is up to date. */ - if (!error) { + if (error == 0 && nfscl_mustflush(vp)) { ret = nfsrpc_getattr(vp, cred, ap->a_td, &nfsva, NULL); if (!ret) { |