[tip:x86/debug] x86/kdump: No need to disable ioapic/ lapic in crash path
Don Zickus
dzickus at redhat.com
Thu Feb 16 12:27:35 EST 2012
On Mon, Feb 13, 2012 at 10:16:00AM -0800, Yinghai Lu wrote:
> On Mon, Feb 13, 2012 at 8:51 AM, Yinghai Lu <yinghai at kernel.org> wrote:
> >> So I suspect we have a bug in our apic initialization somewhere, but
> >> apic initialization should happen after printk are enabled. Or at least
> >> after early printks so the reset YH is reporting doesn't make much sense.
> >
> > will try Don's first version patch that only removing disable_IO_APIC.
>
> first version patch (only removing disable_IO_APIC) is working.
So I think I figured it out. I went through and commented out code in
disable_local_APIC until I narrowed it down to the piece of code that
needs to be disabled for it to work.
Surprise, surprise... its LVTPC or perf! :-) Actually it is the
nmi_watchdog which uses perf. My theory is NMIs are not disabled and one
is generated by the local apic during decompression (just bad timing) and
*splat*.
Yinghai, you can probably prove this by
echo 0 > /proc/sys/kernel/nmi_watchdog
then do your kdump crash test.
At least that test worked for me.
So either we explicitly shutdown perf or just mask off LVTPC in a modified
disable_local_APIC?
Eric, thoughts, preferences?
Cheers,
Don
More information about the kexec
mailing list