diff options
author | Ed Swierk <eswierk@aristanetworks.com> | 2009-01-26 15:33:31 -0800 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2009-01-27 00:36:19 +0100 |
commit | 3a9f84d354ce1e19956083c8e691727dea33bd5a (patch) | |
tree | abe8c280d3adb7a8e5fc838c59b122a46e6fd464 /lib/smp_processor_id.c | |
parent | bf50c903faba4ec7686ee8a570ac384b0f20814d (diff) | |
download | linux-3a9f84d354ce1e19956083c8e691727dea33bd5a.tar.gz linux-3a9f84d354ce1e19956083c8e691727dea33bd5a.tar.bz2 linux-3a9f84d354ce1e19956083c8e691727dea33bd5a.zip |
signals, debug: fix BUG: using smp_processor_id() in preemptible code in print_fatal_signal()
With print-fatal-signals=1 on a kernel with CONFIG_PREEMPT=y, sending an
unexpected signal to a process causes a BUG: using smp_processor_id() in
preemptible code.
get_signal_to_deliver() releases the siglock before calling
print_fatal_signal(), which calls show_regs(), which calls
smp_processor_id(), which is not supposed to be called from a
preemptible thread.
Make sure show_regs() runs with preemption disabled.
Signed-off-by: Ed Swierk <eswierk@aristanetworks.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'lib/smp_processor_id.c')
0 files changed, 0 insertions, 0 deletions