Author: kib
Date: Wed Mar 24 14:53:28 2010
New Revision: 205598
URL: http://svn.freebsd.org/changeset/base/205598

Log:
  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.

Modified:
  stable/8/sys/fs/msdosfs/msdosfs_vfsops.c
Directory Properties:
  stable/8/sys/   (props changed)
  stable/8/sys/amd64/include/xen/   (props changed)
  stable/8/sys/cddl/contrib/opensolaris/   (props changed)
  stable/8/sys/contrib/dev/acpica/   (props changed)
  stable/8/sys/contrib/pf/   (props changed)
  stable/8/sys/dev/xen/xenpci/   (props changed)
  stable/8/sys/net/   (props changed)

Modified: stable/8/sys/fs/msdosfs/msdosfs_vfsops.c
==============================================================================
--- stable/8/sys/fs/msdosfs/msdosfs_vfsops.c    Wed Mar 24 14:50:04 2010        
(r205597)
+++ stable/8/sys/fs/msdosfs/msdosfs_vfsops.c    Wed Mar 24 14:53:28 2010        
(r205598)
@@ -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);
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "[email protected]"

Reply via email to