Page MenuHomeFreeBSD

D40855.1779371662.diff
No OneTemporary

Size
616 B
Referenced Files
None
Subscribers
None

D40855.1779371662.diff

diff --git a/sys/fs/nfsserver/nfs_nfsdport.c b/sys/fs/nfsserver/nfs_nfsdport.c
--- a/sys/fs/nfsserver/nfs_nfsdport.c
+++ b/sys/fs/nfsserver/nfs_nfsdport.c
@@ -2666,9 +2666,14 @@
(nd->nd_flag & ND_NFSV4) != 0 &&
nvp->v_type == VDIR &&
nvp->v_mountedhere != NULL) {
- new_mp = nvp->v_mountedhere;
- r = vfs_busy(new_mp, 0);
- vput(nvp);
+ bool unlocked;
+
+ r = vn_busy_mountedhere(
+ nvp, &unlocked, &new_mp);
+ if (!unlocked)
+ vput(nvp);
+ else
+ vrele(nvp);
nvp = NULL;
if (r == 0) {
r = VFS_ROOT(new_mp,

File Metadata

Mime Type
text/plain
Expires
Thu, May 21, 1:54 PM (23 h, 7 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
28756801
Default Alt Text
D40855.1779371662.diff (616 B)

Event Timeline