]> Git Repo - linux.git/commit - fs/ubifs/sysfs.c
ubifs: Fix memory leak in ubifs_sysfs_init()
authorLiu Shixin <[email protected]>
Thu, 20 Oct 2022 04:30:31 +0000 (12:30 +0800)
committerRichard Weinberger <[email protected]>
Thu, 2 Feb 2023 20:13:35 +0000 (21:13 +0100)
commit203a55f04f66eea1a1ca7e5a302a7f5c99c62327
tree00e41d7a909b7b8c52a96150ac0d54dbf8c14aeb
parentaa6d148e6d6270274e3d5a529b71c54cd329d17f
ubifs: Fix memory leak in ubifs_sysfs_init()

When insmod ubifs.ko, a kmemleak reported as below:

 unreferenced object 0xffff88817fb1a780 (size 8):
   comm "insmod", pid 25265, jiffies 4295239702 (age 100.130s)
   hex dump (first 8 bytes):
     75 62 69 66 73 00 ff ff                          ubifs...
   backtrace:
     [<ffffffff81b3fc4c>] slab_post_alloc_hook+0x9c/0x3c0
     [<ffffffff81b44bf3>] __kmalloc_track_caller+0x183/0x410
     [<ffffffff8198d3da>] kstrdup+0x3a/0x80
     [<ffffffff8198d486>] kstrdup_const+0x66/0x80
     [<ffffffff83989325>] kvasprintf_const+0x155/0x190
     [<ffffffff83bf55bb>] kobject_set_name_vargs+0x5b/0x150
     [<ffffffff83bf576b>] kobject_set_name+0xbb/0xf0
     [<ffffffff8100204c>] do_one_initcall+0x14c/0x5a0
     [<ffffffff8157e380>] do_init_module+0x1f0/0x660
     [<ffffffff815857be>] load_module+0x6d7e/0x7590
     [<ffffffff8158644f>] __do_sys_finit_module+0x19f/0x230
     [<ffffffff815866b3>] __x64_sys_finit_module+0x73/0xb0
     [<ffffffff88c98e85>] do_syscall_64+0x35/0x80
     [<ffffffff88e00087>] entry_SYSCALL_64_after_hwframe+0x63/0xcd

When kset_register() failed, we should call kset_put to cleanup it.

Fixes: 2e3cbf425804 ("ubifs: Export filesystem error counters")
Signed-off-by: Liu Shixin <[email protected]>
Signed-off-by: Richard Weinberger <[email protected]>
fs/ubifs/sysfs.c
This page took 0.044027 seconds and 4 git commands to generate.