summaryrefslogtreecommitdiffstats
path: root/sys/fs/nfs
diff options
context:
space:
mode:
authorrmacklem <rmacklem@FreeBSD.org>2014-01-01 02:49:45 +0000
committerrmacklem <rmacklem@FreeBSD.org>2014-01-01 02:49:45 +0000
commite876d4736cec7a72c621f94d97df99a81f04693a (patch)
tree8468e7f782ca8c4cf5ada54dc0f7b9e73e3a2127 /sys/fs/nfs
parent0b3ac62883e350fd41c5565331525f6ba9ff38c0 (diff)
downloadFreeBSD-src-e876d4736cec7a72c621f94d97df99a81f04693a.zip
FreeBSD-src-e876d4736cec7a72c621f94d97df99a81f04693a.tar.gz
MFC: r259854
The NFSv4 server would call VOP_SETATTR() with a shared locked vnode when a Getattr for a file is done by a client other than the one that holds the file's delegation. This would only happen when delegations are enabled and the problem is fixed by this patch.
Diffstat (limited to 'sys/fs/nfs')
-rw-r--r--sys/fs/nfs/nfs_var.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/fs/nfs/nfs_var.h b/sys/fs/nfs/nfs_var.h
index f6a974e..7fbabaa 100644
--- a/sys/fs/nfs/nfs_var.h
+++ b/sys/fs/nfs/nfs_var.h
@@ -613,7 +613,7 @@ void nfsvno_open(struct nfsrv_descript *, struct nameidata *, nfsquad_t,
nfsv4stateid_t *, struct nfsstate *, int *, struct nfsvattr *, int32_t *,
int, NFSACL_T *, nfsattrbit_t *, struct ucred *, NFSPROC_T *,
struct nfsexstuff *, vnode_t *);
-void nfsvno_updfilerev(vnode_t, struct nfsvattr *, struct ucred *,
+int nfsvno_updfilerev(vnode_t, struct nfsvattr *, struct ucred *,
NFSPROC_T *);
int nfsvno_fillattr(struct nfsrv_descript *, struct mount *, vnode_t,
struct nfsvattr *, fhandle_t *, int, nfsattrbit_t *,
OpenPOWER on IntegriCloud