Resolves: bz1095915

This commit is contained in:
Petr Holasek 2014-05-08 23:25:03 +02:00
parent b4851ff0df
commit e30ad36c0e
2 changed files with 41 additions and 1 deletions

View File

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

View File

@ -1,6 +1,6 @@
Name: irqbalance Name: irqbalance
Version: 1.0.7 Version: 1.0.7
Release: 4%{?dist} Release: 5%{?dist}
Epoch: 2 Epoch: 2
Summary: IRQ balancing daemon Summary: IRQ balancing daemon
@ -23,6 +23,7 @@ Requires: numactl-libs
ExclusiveArch: %{ix86} x86_64 ia64 ppc ppc64 ppc64le %{arm} ExclusiveArch: %{ix86} x86_64 ia64 ppc ppc64 ppc64le %{arm}
Patch1: irqbalance-1.0.4-env-file-path.patch Patch1: irqbalance-1.0.4-env-file-path.patch
Patch2: irqbalance-1.0.7-nopcidevs_memleak.patch
%description %description
irqbalance is a daemon that evenly distributes IRQ load across irqbalance is a daemon that evenly distributes IRQ load across
@ -31,6 +32,7 @@ multiple CPUs for enhanced performance.
%prep %prep
%setup -q %setup -q
%patch1 -p1 %patch1 -p1
%patch2 -p1
%build %build
./autogen.sh ./autogen.sh
@ -68,6 +70,9 @@ fi
/sbin/chkconfig --del irqbalance >/dev/null 2>&1 || : /sbin/chkconfig --del irqbalance >/dev/null 2>&1 || :
%changelog %changelog
* Thu May 08 2014 Petr Holasek <pholasek@redhat.com> - 2:1.0.7-5
- Fixed memory leak (bz1095915)
* Mon Feb 10 2014 Petr Holasek <pholasek@redhat.com> - 2:1.0.7-4 * Mon Feb 10 2014 Petr Holasek <pholasek@redhat.com> - 2:1.0.7-4
- Missing autogen.sh call fixed - Missing autogen.sh call fixed