summaryrefslogtreecommitdiffstats
path: root/sys/fs/nfs/nfs_var.h
diff options
context:
space:
mode:
authorrmacklem <rmacklem@FreeBSD.org>2013-12-11 23:28:31 +0000
committerrmacklem <rmacklem@FreeBSD.org>2013-12-11 23:28:31 +0000
commit6d1eed3f4094630bd37d5d5cc9cc9355e9a62596 (patch)
tree06270bc94a7b2e7e810a830ca2c734419fd5cfe7 /sys/fs/nfs/nfs_var.h
parent89f39922eeb419af3bbb369e1a9d8f5fd4a8ead2 (diff)
downloadFreeBSD-src-6d1eed3f4094630bd37d5d5cc9cc9355e9a62596.zip
FreeBSD-src-6d1eed3f4094630bd37d5d5cc9cc9355e9a62596.tar.gz
MFC: r257901
Fix an NFSv4.1 client specific case where a forced dismount would hang. The hang occurred in nfsv4_setsequence() when it couldn't find an available session slot and is fixed by checking for a forced dismount in progress and just returning for this case.
Diffstat (limited to 'sys/fs/nfs/nfs_var.h')
-rw-r--r--sys/fs/nfs/nfs_var.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/fs/nfs/nfs_var.h b/sys/fs/nfs/nfs_var.h
index 1edb8a3..f6a974e 100644
--- a/sys/fs/nfs/nfs_var.h
+++ b/sys/fs/nfs/nfs_var.h
@@ -265,7 +265,8 @@ int nfsv4_getipaddr(struct nfsrv_descript *, struct sockaddr_storage *,
int nfsv4_seqsession(uint32_t, uint32_t, uint32_t, struct nfsslot *,
struct mbuf **, uint16_t);
void nfsv4_seqsess_cacherep(uint32_t, struct nfsslot *, struct mbuf *);
-void nfsv4_setsequence(struct nfsrv_descript *, struct nfsclsession *, int);
+void nfsv4_setsequence(struct nfsmount *, struct nfsrv_descript *,
+ struct nfsclsession *, int);
void nfsv4_freeslot(struct nfsclsession *, int);
/* nfs_clcomsubs.c */
OpenPOWER on IntegriCloud