summaryrefslogtreecommitdiffstats
path: root/fs/super.c
diff options
context:
space:
mode:
authorRalf Baechle <ralf@linux-mips.org>2000-03-19 01:28:40 +0000
committerRalf Baechle <ralf@linux-mips.org>2000-03-19 01:28:40 +0000
commit8abb719409c9060a7c0676f76e9182c1e0b8ca46 (patch)
treeb88cc5a6cd513a04a512b7e6215c873c90a1c5dd /fs/super.c
parentf01bd7aeafd95a08aafc9e3636bb26974df69d82 (diff)
Merge with 2.3.99-pre1.
Diffstat (limited to 'fs/super.c')
-rw-r--r--fs/super.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/fs/super.c b/fs/super.c
index c365c556c..8aed9ce90 100644
--- a/fs/super.c
+++ b/fs/super.c
@@ -966,10 +966,10 @@ bdput_and_out:
sb->s_bdev = NULL;
sb->s_dev = 0;
sb->s_type = NULL;
-fsput_and_out:
- put_filesystem(fs_type);
if (bdev)
bdput(bdev);
+fsput_and_out:
+ put_filesystem(fs_type);
dput_and_out:
dput(dir_d);
up(&mount_sem);
@@ -1134,7 +1134,7 @@ asmlinkage long sys_mount(char * dev_name, char * dir_name, char * type,
dentry = namei(dev_name);
retval = PTR_ERR(dentry);
if (IS_ERR(dentry))
- goto out;
+ goto fs_out;
inode = dentry->d_inode;
retval = -ENOTBLK;
@@ -1163,6 +1163,8 @@ asmlinkage long sys_mount(char * dev_name, char * dir_name, char * type,
dput_and_out:
dput(dentry);
+fs_out:
+ put_filesystem(fstype);
out:
unlock_kernel();
return retval;