diff options
author | Eric Biggers <ebiggers@google.com> | 2020-09-22 09:24:56 -0700 |
---|---|---|
committer | Theodore Ts'o <tytso@mit.edu> | 2020-10-18 10:36:12 -0400 |
commit | cb8d53d2c97369029cc638c9274ac7be0a316c75 (patch) | |
tree | fd83ce283e3c93aa0c50e719dd584d051cdff51e /fs | |
parent | 5b3dc19dda6691e8ab574e8eede1aef6f02a4f1c (diff) | |
download | linux-stable-cb8d53d2c97369029cc638c9274ac7be0a316c75.tar.gz linux-stable-cb8d53d2c97369029cc638c9274ac7be0a316c75.tar.bz2 linux-stable-cb8d53d2c97369029cc638c9274ac7be0a316c75.zip |
ext4: fix leaking sysfs kobject after failed mount
ext4_unregister_sysfs() only deletes the kobject. The reference to it
needs to be put separately, like ext4_put_super() does.
This addresses the syzbot report
"memory leak in kobject_set_name_vargs (3)"
(https://syzkaller.appspot.com/bug?extid=9f864abad79fae7c17e1).
Reported-by: syzbot+9f864abad79fae7c17e1@syzkaller.appspotmail.com
Fixes: 72ba74508b28 ("ext4: release sysfs kobject when failing to enable quotas on mount")
Cc: stable@vger.kernel.org
Signed-off-by: Eric Biggers <ebiggers@google.com>
Link: https://lore.kernel.org/r/20200922162456.93657-1-ebiggers@kernel.org
Reviewed-by: Jan Kara <jack@suse.cz>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Diffstat (limited to 'fs')
-rw-r--r-- | fs/ext4/super.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/ext4/super.c b/fs/ext4/super.c index ea425b49b345..41953b86ffe3 100644 --- a/fs/ext4/super.c +++ b/fs/ext4/super.c @@ -4872,6 +4872,7 @@ cantfind_ext4: failed_mount8: ext4_unregister_sysfs(sb); + kobject_put(&sbi->s_kobj); failed_mount7: ext4_unregister_li_request(sb); failed_mount6: |