summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Baldwin <jhb@FreeBSD.org>2009-02-11 22:19:54 +0000
committerJohn Baldwin <jhb@FreeBSD.org>2009-02-11 22:19:54 +0000
commitee445a69c5ef5834941792facf42ff0ef1e5e7b0 (patch)
treec90e19bbb18790289547f2711b159136d8398f6e
parentd34b671cda18de3710dec07981c5c2e9ba1bc629 (diff)
Notes
-rw-r--r--sys/ufs/ffs/ffs_vfsops.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/sys/ufs/ffs/ffs_vfsops.c b/sys/ufs/ffs/ffs_vfsops.c
index b9ad0904e722..95dbeb1f0989 100644
--- a/sys/ufs/ffs/ffs_vfsops.c
+++ b/sys/ufs/ffs/ffs_vfsops.c
@@ -622,10 +622,13 @@ ffs_mountfs(devvp, mp, td)
struct g_consumer *cp;
struct mount *nmp;
- dev = devvp->v_rdev;
+ bp = NULL;
+ ump = NULL;
cred = td ? td->td_ucred : NOCRED;
-
ronly = (mp->mnt_flag & MNT_RDONLY) != 0;
+
+ dev = devvp->v_rdev;
+ dev_ref(dev);
DROP_GIANT();
g_topology_lock();
error = g_vfs_open(devvp, &cp, "ffs", ronly ? 0 : 1);
@@ -640,8 +643,7 @@ ffs_mountfs(devvp, mp, td)
PICKUP_GIANT();
VOP_UNLOCK(devvp, 0);
if (error)
- return (error);
- dev_ref(dev);
+ goto out;
if (devvp->v_rdev->si_iosize_max != 0)
mp->mnt_iosize_max = devvp->v_rdev->si_iosize_max;
if (mp->mnt_iosize_max > MAXPHYS)
@@ -650,8 +652,6 @@ ffs_mountfs(devvp, mp, td)
devvp->v_bufobj.bo_private = cp;
devvp->v_bufobj.bo_ops = &ffs_ops;
- bp = NULL;
- ump = NULL;
fs = NULL;
sblockloc = 0;
/*