⬢ DragonFlyBSD Kernel Audit
DF-5534 / fix.diff
← back to finding ↓ download raw
--- a/sys/vfs/nfs/nfs_vfsops.c
+++ b/sys/vfs/nfs/nfs_vfsops.c
@@ -656,7 +656,6 @@ nfs_mountroot(struct mount *mp)
 	error = nfs_mountdiskless(buf, "/", MNT_RDONLY, &nd->root_saddr,
 				  &nd->root_args, td, &vp, &mp);
 	if (error) {
-		mp->mnt_vfc->vfc_refcount--;
 		crit_exit();
 		return (error);
 	}
@@ -939,8 +938,7 @@ nfs_mount(struct mount *mp, char *path, caddr_t data, struct ucred *cred)
 	u_char nfh[NFSX_V3FHMAX];
 
 	if (path == NULL) {
-		nfs_mountroot(mp);
-		return (0);
+		return (nfs_mountroot(mp));
 	}
 	error = copyin(data, (caddr_t)&args, sizeof (struct nfs_args));
 	if (error)