| From cb8d53d2c97369029cc638c9274ac7be0a316c75 Mon Sep 17 00:00:00 2001 |
| From: Eric Biggers <ebiggers@google.com> |
| Date: Tue, 22 Sep 2020 09:24:56 -0700 |
| Subject: ext4: fix leaking sysfs kobject after failed mount |
| |
| From: Eric Biggers <ebiggers@google.com> |
| |
| commit cb8d53d2c97369029cc638c9274ac7be0a316c75 upstream. |
| |
| 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> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| fs/ext4/super.c | 1 + |
| 1 file changed, 1 insertion(+) |
| |
| --- 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: |