Blame SOURCES/irqbalance-1.0.8-fix-memory-leak-in-classify-code.patch

5f346f
From 699deffdd881bf4759f3fcc4d6ee3e018e4c266e Mon Sep 17 00:00:00 2001
5f346f
From: Tom Li <biergaizi2009@gmail.com>
5f346f
Date: Fri, 18 Apr 2014 20:06:18 -0400
5f346f
Subject: [PATCH] fix memory leak in classify code
5f346f
5f346f
If a system has no pci devices the opening of the pci bus directory in
5f346f
rebuild_irq_db will fail, leading to a memory leak.  Fix it by freeing the list
5f346f
we create in that function always on exit
5f346f
5f346f
Reported-by: Tom Li <biergaizi2009@gmail.com>
5f346f
Signed-off-by: Neil Horman <nhorman@tuxdriver.com>
5f346f
Signed-off-by: Tom Li <biergaizi2009@gmail.com>
5f346f
---
5f346f
 classify.c | 3 ++-
5f346f
 1 file changed, 2 insertions(+), 1 deletion(-)
5f346f
5f346f
diff --git a/classify.c b/classify.c
5f346f
index 1867a94..94b53b8 100644
5f346f
--- a/classify.c
5f346f
+++ b/classify.c
5f346f
@@ -465,7 +465,7 @@ void rebuild_irq_db(void)
5f346f
 
5f346f
 	devdir = opendir(SYSDEV_DIR);
5f346f
 	if (!devdir)
5f346f
-		return;
5f346f
+		goto free;
5f346f
 
5f346f
 	do {
5f346f
 		entry = readdir(devdir);
5f346f
@@ -482,6 +482,7 @@ void rebuild_irq_db(void)
5f346f
 
5f346f
 	for_each_irq(tmp_irqs, add_missing_irq, NULL);
5f346f
 
5f346f
+free:
5f346f
 	g_list_free_full(tmp_irqs, free);
5f346f
 
5f346f
 }
5f346f
-- 
5f346f
2.4.3
5f346f