public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] kernel/workqueue.c: better to free related resources when failure occurs in wq_numa_init()
@ 2013-05-14 12:25 Chen Gang
  2013-05-14 15:17 ` Tejun Heo
  0 siblings, 1 reply; 10+ messages in thread
From: Chen Gang @ 2013-05-14 12:25 UTC (permalink / raw)
  To: tj; +Cc: linux-kernel@vger.kernel.org


When NUMA node mapping not available for one cpu, need disabling NUMA
support and proceed.

Also better to release unused resources (the original code can not
cause issue, only waste some memory).


Signed-off-by: Chen Gang <gang.chen@asianux.com>
---
 kernel/workqueue.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/kernel/workqueue.c b/kernel/workqueue.c
index 1ae6028..a763079 100644
--- a/kernel/workqueue.c
+++ b/kernel/workqueue.c
@@ -4911,6 +4911,9 @@ static void __init wq_numa_init(void)
 		if (WARN_ON(node == NUMA_NO_NODE)) {
 			pr_warn("workqueue: NUMA node mapping not available for cpu%d, disabling NUMA support\n", cpu);
 			/* happens iff arch is bonkers, let's just proceed */
+			for_each_node(node)
+				free_cpumask_var(tbl[node]);
+			kfree(tbl);
 			return;
 		}
 		cpumask_set_cpu(cpu, tbl[node]);
-- 
1.7.11.7

^ permalink raw reply related	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2013-05-17  2:52 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-05-14 12:25 [PATCH] kernel/workqueue.c: better to free related resources when failure occurs in wq_numa_init() Chen Gang
2013-05-14 15:17 ` Tejun Heo
2013-05-15  2:16   ` Chen Gang
2013-05-15  6:13     ` [PATCH] kernel/workqueue.c: need call device_remove_file() when failure occurs after called device_create_file() Chen Gang
2013-05-15 21:22       ` Tejun Heo
2013-05-16  3:33         ` Chen Gang
2013-05-16  4:16           ` Chen Gang
2013-05-16  4:48             ` Chen Gang
2013-05-16 17:50               ` Tejun Heo
2013-05-17  2:51                 ` Chen Gang

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox