kdump: crash_kexec()-smp_send_stop() race in panic
Seiji Aguchi
seiji.aguchi at hds.com
Mon Oct 24 18:24:14 EDT 2011
Hi,
>> >>> 1st CPU:
>> >>> panic()->crash_kexec()->mutex_trylock(&kexec_mutex)-> do kdump
>> >>>
>> >>> 2nd CPU:
>> >>> panic()->crash_kexec()->kexec_mutex already held by 1st CPU
>> >>> ->smp_send_stop()-> stop CPU 1 (stop kdump)
>> >>>
>> >>> How should we fix this problem? One possibility could be to do
>> >>> smp_send_stop() before we call crash_kexec().
http://lkml.org/lkml/2010/9/16/353
I developed a patch solving this issue one year ago.
(Just adding local_irq_disable in kexec path.)
I hope this helps.
Seiji
More information about the kexec
mailing list