aboutsummaryrefslogtreecommitdiff
path: root/sys/nfsclient
diff options
context:
space:
mode:
authorRobert Watson <rwatson@FreeBSD.org>2009-06-25 11:52:33 +0000
committerRobert Watson <rwatson@FreeBSD.org>2009-06-25 11:52:33 +0000
commit2d9cfabad4b7d8d7589a825030ac7165b29a6e00 (patch)
treef7bd2b06a93cabd18d4d4396239234b49517bc87 /sys/nfsclient
parent51500a4872e675ba5a0642a04272551dfc84bb18 (diff)
Notes
Diffstat (limited to 'sys/nfsclient')
-rw-r--r--sys/nfsclient/nfs_vnops.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/sys/nfsclient/nfs_vnops.c b/sys/nfsclient/nfs_vnops.c
index 3623fab6c325..bc6936d45984 100644
--- a/sys/nfsclient/nfs_vnops.c
+++ b/sys/nfsclient/nfs_vnops.c
@@ -1553,11 +1553,15 @@ again:
tl = nfsm_build(u_int32_t *, NFSX_V3CREATEVERF);
#ifdef INET
INIT_VNET_INET(curvnet);
+ IN_IFADDR_RLOCK();
if (!TAILQ_EMPTY(&V_in_ifaddrhead))
*tl++ = IA_SIN(TAILQ_FIRST(&V_in_ifaddrhead))->sin_addr.s_addr;
else
#endif
*tl++ = create_verf;
+#ifdef INET
+ IN_IFADDR_RUNLOCK();
+#endif
*tl = ++create_verf;
} else {
*tl = txdr_unsigned(NFSV3CREATE_UNCHECKED);