diff options
author | Frederic Weisbecker <fweisbec@gmail.com> | 2009-03-15 20:45:03 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2009-03-16 04:13:18 -0400 |
commit | 2fc1dfbe17e7705c55b7a99da995fa565e26f151 (patch) | |
tree | 8d7ecb57fdefdfac5bdff6ee3a82485e2ea4340a /kernel | |
parent | ac1d52d0b85854958c7e78c8006e39aadb6ce4b8 (diff) |
tracing/core: fix early free of cpumasks
Impact: fix crashes when tracing cpumasks
While ring-buffer allocation, the cpumasks are allocated too,
including the tracing cpumask and the per-cpu file mask handler.
But these cpumasks are freed accidentally just after.
Fix it.
Reported-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com>
LKML-Reference: <1237164303-11476-1-git-send-email-fweisbec@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'kernel')
-rw-r--r-- | kernel/trace/trace.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c index c0cf946d42f5..ae32d3b99b4b 100644 --- a/kernel/trace/trace.c +++ b/kernel/trace/trace.c | |||
@@ -4125,7 +4125,8 @@ __init static int tracer_alloc_buffers(void) | |||
4125 | &trace_panic_notifier); | 4125 | &trace_panic_notifier); |
4126 | 4126 | ||
4127 | register_die_notifier(&trace_die_notifier); | 4127 | register_die_notifier(&trace_die_notifier); |
4128 | ret = 0; | 4128 | |
4129 | return 0; | ||
4129 | 4130 | ||
4130 | out_free_cpumask: | 4131 | out_free_cpumask: |
4131 | free_cpumask_var(tracing_reader_cpumask); | 4132 | free_cpumask_var(tracing_reader_cpumask); |