mirror of
https://github.com/torvalds/linux.git
synced 2026-05-30 18:13:41 +02:00
fs/ntfs3: Fix 'proc_info_root' leak when init ntfs failed
There's a issue as follows:
proc_dir_entry 'fs/ntfs3' already registered
WARNING: CPU: 3 PID: 9788 at fs/proc/generic.c:375 proc_register+0x418/0x590
Modules linked in: ntfs3(E+)
Call Trace:
<TASK>
_proc_mkdir+0x165/0x200
init_ntfs_fs+0x36/0xf90 [ntfs3]
do_one_initcall+0x115/0x6c0
do_init_module+0x253/0x760
load_module+0x55f2/0x6c80
init_module_from_file+0xd2/0x130
__x64_sys_finit_module+0xbf/0x130
do_syscall_64+0x72/0x1c0
Above issue happens as missing destroy 'proc_info_root' when error
happens after create 'proc_info_root' in init_ntfs_fs().
So destroy 'proc_info_root' in error path in init_ntfs_fs().
Fixes: 7832e12349 ("fs/ntfs3: Add support /proc/fs/ntfs3/<dev>/volinfo and /proc/fs/ntfs3/<dev>/label")
Signed-off-by: Ye Bin <yebin10@huawei.com>
Signed-off-by: Konstantin Komarov <almaz.alexandrovich@paragon-software.com>
This commit is contained in:
parent
c5a3962953
commit
1d1a7e2525
|
|
@ -1885,7 +1885,7 @@ static int __init init_ntfs_fs(void)
|
|||
|
||||
err = ntfs3_init_bitmap();
|
||||
if (err)
|
||||
return err;
|
||||
goto out2;
|
||||
|
||||
ntfs_inode_cachep = kmem_cache_create(
|
||||
"ntfs_inode_cache", sizeof(struct ntfs_inode), 0,
|
||||
|
|
@ -1905,6 +1905,8 @@ static int __init init_ntfs_fs(void)
|
|||
kmem_cache_destroy(ntfs_inode_cachep);
|
||||
out1:
|
||||
ntfs3_exit_bitmap();
|
||||
out2:
|
||||
ntfs_remove_proc_root();
|
||||
return err;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user