[PATCH] workqueue: Free useless memory when disabling NUMA in wq_numa_init()

From: Xunlei Pang
Date: Wed Sep 16 2015 - 22:45:53 EST


From: Xunlei Pang <pang.xunlei@xxxxxxxxxx>

wq_update_unbound_numa_attrs_buf and tbl will never be used
in case of invalid NUMA node mapping, so just free them.

Signed-off-by: Xunlei Pang <pang.xunlei@xxxxxxxxxx>
---
kernel/workqueue.c | 7 +++++++
1 file changed, 7 insertions(+)

diff --git a/kernel/workqueue.c b/kernel/workqueue.c
index ca71582..22d7747 100644
--- a/kernel/workqueue.c
+++ b/kernel/workqueue.c
@@ -5197,6 +5197,13 @@ 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);
+
+ for_each_node(node)
+ free_cpumask_var(tbl[node]);
+ kfree(tbl);
+
+ free_workqueue_attrs(wq_update_unbound_numa_attrs_buf);
+ wq_update_unbound_numa_attrs_buf = NULL;
/* happens iff arch is bonkers, let's just proceed */
return;
}
--
1.9.1


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/