summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWang Hai <wanghai38@huawei.com>2020-07-30 14:36:02 +0800
committerHeiko Carstens <hca@linux.ibm.com>2020-08-11 18:16:16 +0200
commit75d3e7f4769d276a056efa1cc7f08de571fc9b4b (patch)
treef2bdda1253987318ddd609bb7c6045998989effc
parentba925fa35057a062ac98c3e8138b013ce4ce351c (diff)
downloadlinux-75d3e7f4769d276a056efa1cc7f08de571fc9b4b.tar.gz
linux-75d3e7f4769d276a056efa1cc7f08de571fc9b4b.tar.bz2
linux-75d3e7f4769d276a056efa1cc7f08de571fc9b4b.zip
s390/test_unwind: fix possible memleak in test_unwind()
test_unwind() misses to call kfree(bt) in an error path. Add the missed function call to fix it. Fixes: 0610154650f1 ("s390/test_unwind: print verbose unwinding results") Reported-by: Hulk Robot <hulkci@huawei.com> Signed-off-by: Wang Hai <wanghai38@huawei.com> Acked-by: Ilya Leoshkevich <iii@linux.ibm.com> Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
-rw-r--r--arch/s390/lib/test_unwind.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/s390/lib/test_unwind.c b/arch/s390/lib/test_unwind.c
index eb382ceaa116..7c988994931f 100644
--- a/arch/s390/lib/test_unwind.c
+++ b/arch/s390/lib/test_unwind.c
@@ -64,6 +64,7 @@ static noinline int test_unwind(struct task_struct *task, struct pt_regs *regs,
break;
if (state.reliable && !addr) {
pr_err("unwind state reliable but addr is 0\n");
+ kfree(bt);
return -EINVAL;
}
sprint_symbol(sym, addr);