From 3d9ee8abe26c3154b5152d454b77f0fa764191b9 Mon Sep 17 00:00:00 2001 From: Konstantin Belousov Date: Wed, 24 Mar 2010 14:53:28 +0000 Subject: [PATCH] MFC r204589: Do not leak vnode lock when msdosfs mount is updated and specified device is different from the device used to the original mount. --- sys/fs/msdosfs/msdosfs_vfsops.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/sys/fs/msdosfs/msdosfs_vfsops.c b/sys/fs/msdosfs/msdosfs_vfsops.c index 38198593107..a7c31d7d6f7 100644 --- a/sys/fs/msdosfs/msdosfs_vfsops.c +++ b/sys/fs/msdosfs/msdosfs_vfsops.c @@ -383,10 +383,9 @@ msdosfs_mount(struct mount *mp) pmp = VFSTOMSDOSFS(mp); #endif } else { + vput(devvp); if (devvp != pmp->pm_devvp) - error = EINVAL; /* XXX needs translation */ - else - vput(devvp); + return (EINVAL); /* XXX needs translation */ } if (error) { vrele(devvp);