Re: [tip:x86/debug] x86/kdump: No need to disable ioapic/ lapic incrash path

From: Don Zickus
Date: Fri Feb 17 2012 - 15:19:05 EST


On Sat, Feb 18, 2012 at 12:49:16AM +0900, HATAYAMA Daisuke wrote:
> A few days ago I investigted the case where system is reseted due to
> triple fault caused by the NMI after idt is disabled in
> machine_kexec. I didn't see the reset when trigering the kdump with
> NMI since the NMI is masked until next iret instruction executed as
> described in 6.7.2. Handling Multiple NMIs of Intel Manual Vol.3A.
> The NMI mask remains untill the first iret execution on the 2nd
> kernel: just the return path of the first kernel_thread invocation for
> init process. The exact path is:

hmm. So even though the local apic was disabled you still got an NMI?
That could have been from an external NMI. I forget how that is wired up,
if it goes through the IOAPIC to the Local APIC or directly to the NMI pin
on the cpu.

>
> switch_to
> -> ret_from_fork
> -> int_ret_from_sys_call
> -> retint_restore_args
> -> irq_return
>
> At that phase idt is already set up and kdump works.
>
> From the discussion I interpret kdump doesn't assume this behaviour,
> right?

probably not.

>
> BTW, does anyone know the detail of the NMI mask? I couldn't figure
> out about it from the Intel spec more than ``certain hardware
> conditions''... I expect those who look at here are x86 NMI experts.

I don't understand the question.

Cheers,
Don
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/