summaryrefslogtreecommitdiffstats
path: root/sys/fs/nfsclient/nfs_clvnops.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/fs/nfsclient/nfs_clvnops.c')
-rw-r--r--sys/fs/nfsclient/nfs_clvnops.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/sys/fs/nfsclient/nfs_clvnops.c b/sys/fs/nfsclient/nfs_clvnops.c
index 3c47552..f69be4d 100644
--- a/sys/fs/nfsclient/nfs_clvnops.c
+++ b/sys/fs/nfsclient/nfs_clvnops.c
@@ -1400,11 +1400,15 @@ again:
CURVNET_SET(P_TO_VNET(&proc0));
#ifdef INET
INIT_VNET_INET(curvnet);
+ IN_IFADDR_RLOCK();
if (!TAILQ_EMPTY(&V_in_ifaddrhead))
cverf.lval[0] = IA_SIN(TAILQ_FIRST(&V_in_ifaddrhead))->sin_addr.s_addr;
else
#endif
cverf.lval[0] = create_verf;
+#ifdef INET
+ IN_IFADDR_RUNLOCK();
+#endif
cverf.lval[1] = ++create_verf;
CURVNET_RESTORE();
error = nfsrpc_create(dvp, cnp->cn_nameptr, cnp->cn_namelen,
OpenPOWER on IntegriCloud