2018-08-06 01:21:58

by Yi Wang

[permalink] [raw]
Subject: [PATCH] workqueue: fix memory leak in wq_numa_init()

The 'tbl' variable may leak when return in function
wq_numa_init(), and this patch fixes this.

Signed-off-by: Yi Wang <[email protected]>
Reviewed-by: Jiang Biao <[email protected]>
---
kernel/workqueue.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/kernel/workqueue.c b/kernel/workqueue.c
index 78b1920..9321a05 100644
--- a/kernel/workqueue.c
+++ b/kernel/workqueue.c
@@ -5649,6 +5649,7 @@ static void __init wq_numa_init(void)
node = cpu_to_node(cpu);
if (WARN_ON(node == NUMA_NO_NODE)) {
pr_warn("workqueue: NUMA node mapping not available for cpu%d, disabling NUMA support\n", cpu);
+ kfree(tbl);
/* happens iff arch is bonkers, let's just proceed */
return;
}
--
1.8.3.1



2018-08-20 17:00:52

by Tejun Heo

[permalink] [raw]
Subject: Re: [PATCH] workqueue: fix memory leak in wq_numa_init()

On Mon, Aug 20, 2018 at 12:05:50PM +0800, [email protected] wrote:
> Gentle ping :)
>
> > The 'tbl' variable may leak when return in function
> > wq_numa_init(), and this patch fixes this.
> >
> > Signed-off-by: Yi Wang <[email protected]>
> > Reviewed-by: Jiang Biao <[email protected]>

It's a kernel bug path where we might as well crash. Whether the tbl
gets leaked or not doesn't matter.

Thanks.

--
tejun