vfs_hash_insert() vputs() the losing vnode before returning, in the event of
a race where a duplicate vnode is entered into the vfs hash. nfs_nget() shouldn't be releasing the vnode in that case.
This commit is contained in:
parent
87c125cecc
commit
3c2fcc3c92
@ -159,8 +159,7 @@ nfs_nget(struct mount *mntp, nfsfh_t *fhp, int fhsize, struct nfsnode **npp, int
|
||||
return (error);
|
||||
if (nvp != NULL) {
|
||||
*npp = VTONFS(nvp);
|
||||
/* vrele() the duplicate allocated here, to get it recycled */
|
||||
vrele(vp);
|
||||
/* vfs_hash_insert() vput()'s the losing vnode */
|
||||
return (0);
|
||||
}
|
||||
if (fhsize > NFS_SMALLFH) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user