diff options
author | Sukadev Bhattiprolu <sukadev@linux.vnet.ibm.com> | 2009-03-04 15:06:34 -0500 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2009-03-27 14:44:03 -0400 |
commit | a3ec947c85ec339884b30ef6a08133e9311fdae1 (patch) | |
tree | c3cc5859a6b6d8986547405b6c5bd11bc8916114 /fs/super.c | |
parent | 585d3bc06f4ca57f975a5a1f698f65a45ea66225 (diff) |
vfs: simple_set_mnt() should return void
simple_set_mnt() is defined as returning 'int' but always returns 0.
Callers assume simple_set_mnt() never fails and don't properly cleanup if
it were to _ever_ fail. For instance, get_sb_single() and get_sb_nodev()
should:
up_write(sb->s_unmount);
deactivate_super(sb);
if simple_set_mnt() fails.
Since simple_set_mnt() never fails, would be cleaner if it did not
return anything.
[akpm@linux-foundation.org: fix build]
Signed-off-by: Sukadev Bhattiprolu <sukadev@linux.vnet.ibm.com>
Acked-by: Serge Hallyn <serue@us.ibm.com>
Cc: Al Viro <viro@zeniv.linux.org.uk>
Cc: Christoph Hellwig <hch@lst.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/super.c')
-rw-r--r-- | fs/super.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/fs/super.c b/fs/super.c index 6ce501447ada..e512fab64c93 100644 --- a/fs/super.c +++ b/fs/super.c | |||
@@ -831,7 +831,8 @@ int get_sb_bdev(struct file_system_type *fs_type, | |||
831 | bdev->bd_super = s; | 831 | bdev->bd_super = s; |
832 | } | 832 | } |
833 | 833 | ||
834 | return simple_set_mnt(mnt, s); | 834 | simple_set_mnt(mnt, s); |
835 | return 0; | ||
835 | 836 | ||
836 | error_s: | 837 | error_s: |
837 | error = PTR_ERR(s); | 838 | error = PTR_ERR(s); |
@@ -877,7 +878,8 @@ int get_sb_nodev(struct file_system_type *fs_type, | |||
877 | return error; | 878 | return error; |
878 | } | 879 | } |
879 | s->s_flags |= MS_ACTIVE; | 880 | s->s_flags |= MS_ACTIVE; |
880 | return simple_set_mnt(mnt, s); | 881 | simple_set_mnt(mnt, s); |
882 | return 0; | ||
881 | } | 883 | } |
882 | 884 | ||
883 | EXPORT_SYMBOL(get_sb_nodev); | 885 | EXPORT_SYMBOL(get_sb_nodev); |
@@ -909,7 +911,8 @@ int get_sb_single(struct file_system_type *fs_type, | |||
909 | s->s_flags |= MS_ACTIVE; | 911 | s->s_flags |= MS_ACTIVE; |
910 | } | 912 | } |
911 | do_remount_sb(s, flags, data, 0); | 913 | do_remount_sb(s, flags, data, 0); |
912 | return simple_set_mnt(mnt, s); | 914 | simple_set_mnt(mnt, s); |
915 | return 0; | ||
913 | } | 916 | } |
914 | 917 | ||
915 | EXPORT_SYMBOL(get_sb_single); | 918 | EXPORT_SYMBOL(get_sb_single); |