summaryrefslogtreecommitdiffstats
path: root/fs/super.c
diff options
context:
space:
mode:
authorFelix Blyakher <felixb@sgi.com>2009-03-16 09:15:13 -0500
committerFelix Blyakher <felixb@sgi.com>2009-03-16 09:15:13 -0500
commitcb1b77804091cc3491da4338a3599e318f358b25 (patch)
tree481372e91d926b566d7e59c08a97bd3c16c5026a /fs/super.c
parentda5309cd28ffda6ed8a4147bd14f1e4fbbd6503d (diff)
parent5bee17f18b595937e6beafeee5197868a3f74a06 (diff)
downloadlinux-cb1b77804091cc3491da4338a3599e318f358b25.tar.gz
linux-cb1b77804091cc3491da4338a3599e318f358b25.tar.bz2
linux-cb1b77804091cc3491da4338a3599e318f358b25.zip
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
Diffstat (limited to 'fs/super.c')
-rw-r--r--fs/super.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/fs/super.c b/fs/super.c
index 8349ed6b1412..6ce501447ada 100644
--- a/fs/super.c
+++ b/fs/super.c
@@ -371,8 +371,10 @@ retry:
continue;
if (!grab_super(old))
goto retry;
- if (s)
+ if (s) {
+ up_write(&s->s_umount);
destroy_super(s);
+ }
return old;
}
}
@@ -387,6 +389,7 @@ retry:
err = set(s, data);
if (err) {
spin_unlock(&sb_lock);
+ up_write(&s->s_umount);
destroy_super(s);
return ERR_PTR(err);
}