diff options
author | 2008-11-07 14:47:21 +0800 | |
---|---|---|
committer | 2008-11-07 08:29:58 +0100 | |
commit | ca3273f9646694e0419cfb9d6c12deb1c9aff27c (patch) | |
tree | 53e0b28edddd5c29691c9ccc8a7f3c8c11ee9c83 /kernel | |
parent | sched: fix a bug in sched domain degenerate (diff) | |
download | linux-ca3273f9646694e0419cfb9d6c12deb1c9aff27c.tar.gz linux-ca3273f9646694e0419cfb9d6c12deb1c9aff27c.tar.bz2 linux-ca3273f9646694e0419cfb9d6c12deb1c9aff27c.zip |
sched: fix memory leak in a failure path
Impact: fix rare memory leak in the sched-domains manual reconfiguration code
In the failure path, rd is not attached to a sched domain,
so it causes a leak.
Signed-off-by: Li Zefan <lizf@cn.fujitsu.com>
Acked-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'kernel')
-rw-r--r-- | kernel/sched.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/kernel/sched.c b/kernel/sched.c index 4c7e2bcdfa89..57c933ffbee1 100644 --- a/kernel/sched.c +++ b/kernel/sched.c @@ -7676,6 +7676,7 @@ static int __build_sched_domains(const cpumask_t *cpu_map, error: free_sched_groups(cpu_map, tmpmask); SCHED_CPUMASK_FREE((void *)allmasks); + kfree(rd); return -ENOMEM; #endif } |