aboutsummaryrefslogtreecommitdiffstats
path: root/fs/ext4/super.c
diff options
context:
space:
mode:
authorTheodore Ts'o <tytso@mit.edu>2013-01-24 23:24:54 -0500
committerTheodore Ts'o <tytso@mit.edu>2013-01-24 23:24:54 -0500
commit72ba74508b2857e71d65fc93f0d6b684492fc740 (patch)
tree98fe6b50a7454f8804265e25b48e95d873cacfb4 /fs/ext4/super.c
parentaaddea812cb0a2dc38b55ba557b68999bc2f6203 (diff)
ext4: release sysfs kobject when failing to enable quotas on mount
In addition, print the error returned from ext4_enable_quotas() Signed-off-by: "Theodore Ts'o" <tytso@mit.edu> Reviewed-by: Carlos Maiolino <cmaiolino@redhat.com> Cc: stable@vger.kernel.org
Diffstat (limited to 'fs/ext4/super.c')
-rw-r--r--fs/ext4/super.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/fs/ext4/super.c b/fs/ext4/super.c
index c014edd12648..3ac306064b28 100644
--- a/fs/ext4/super.c
+++ b/fs/ext4/super.c
@@ -4009,7 +4009,7 @@ no_journal:
4009 !(sb->s_flags & MS_RDONLY)) { 4009 !(sb->s_flags & MS_RDONLY)) {
4010 err = ext4_enable_quotas(sb); 4010 err = ext4_enable_quotas(sb);
4011 if (err) 4011 if (err)
4012 goto failed_mount7; 4012 goto failed_mount8;
4013 } 4013 }
4014#endif /* CONFIG_QUOTA */ 4014#endif /* CONFIG_QUOTA */
4015 4015
@@ -4036,6 +4036,10 @@ cantfind_ext4:
4036 ext4_msg(sb, KERN_ERR, "VFS: Can't find ext4 filesystem"); 4036 ext4_msg(sb, KERN_ERR, "VFS: Can't find ext4 filesystem");
4037 goto failed_mount; 4037 goto failed_mount;
4038 4038
4039#ifdef CONFIG_QUOTA
4040failed_mount8:
4041 kobject_del(&sbi->s_kobj);
4042#endif
4039failed_mount7: 4043failed_mount7:
4040 ext4_unregister_li_request(sb); 4044 ext4_unregister_li_request(sb);
4041failed_mount6: 4045failed_mount6:
@@ -5006,9 +5010,9 @@ static int ext4_enable_quotas(struct super_block *sb)
5006 DQUOT_USAGE_ENABLED); 5010 DQUOT_USAGE_ENABLED);
5007 if (err) { 5011 if (err) {
5008 ext4_warning(sb, 5012 ext4_warning(sb,
5009 "Failed to enable quota (type=%d) " 5013 "Failed to enable quota tracking "
5010 "tracking. Please run e2fsck to fix.", 5014 "(type=%d, err=%d). Please run "
5011 type); 5015 "e2fsck to fix.", type, err);
5012 return err; 5016 return err;
5013 } 5017 }
5014 } 5018 }