linux/fs/orangefs
Zhang Xiaoxu c885326728 orangefs: Fix kmemleak in orangefs_{kernel,client}_debug_init()
[ Upstream commit 31720a2b10 ]

When insert and remove the orangefs module, there are memory leaked
as below:

unreferenced object 0xffff88816b0cc000 (size 2048):
  comm "insmod", pid 783, jiffies 4294813439 (age 65.512s)
  hex dump (first 32 bytes):
    6e 6f 6e 65 0a 00 00 00 00 00 00 00 00 00 00 00  none............
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
  backtrace:
    [<0000000031ab7788>] kmalloc_trace+0x27/0xa0
    [<000000005b405fee>] orangefs_debugfs_init.cold+0xaf/0x17f
    [<00000000e5a0085b>] 0xffffffffa02780f9
    [<000000004232d9f7>] do_one_initcall+0x87/0x2a0
    [<0000000054f22384>] do_init_module+0xdf/0x320
    [<000000003263bdea>] load_module+0x2f98/0x3330
    [<0000000052cd4153>] __do_sys_finit_module+0x113/0x1b0
    [<00000000250ae02b>] do_syscall_64+0x35/0x80
    [<00000000f11c03c7>] entry_SYSCALL_64_after_hwframe+0x46/0xb0

Use the golbal variable as the buffer rather than dynamic allocate to
slove the problem.

Signed-off-by: Zhang Xiaoxu <zhangxiaoxu5@huawei.com>
Signed-off-by: Mike Marshall <hubcap@omnibond.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2022-12-31 13:14:44 +01:00
..
Kconfig
Makefile
acl.c
dcache.c
devorangefs-req.c
dir.c
downcall.h
file.c
inode.c
namei.c
orangefs-bufmap.c
orangefs-bufmap.h
orangefs-cache.c
orangefs-debug.h
orangefs-debugfs.c orangefs: Fix kmemleak in orangefs_{kernel,client}_debug_init() 2022-12-31 13:14:44 +01:00
orangefs-debugfs.h
orangefs-dev-proto.h
orangefs-kernel.h
orangefs-mod.c
orangefs-sysfs.c
orangefs-sysfs.h
orangefs-utils.c
protocol.h
super.c
symlink.c
upcall.h
waitqueue.c
xattr.c