On 03/07/2014 11:39 AM, Don Zickus wrote: > A customer generated an external NMI using their iLO to test kdump worked. > Unfortunately, the machine hung. Disabling the nmi_watchdog made things work. > > I speculated the external NMI fired, caused the machine to panic (as expected) > and the perf NMI from the watchdog came in and was latched. My guess was this > somehow caused the hang. > ... as any other unexpected exception would. > > I also do not fully understand why the latched NMI is not happening immediately > after the load idt call or why it comes after a page fault (the > early_make_pgtable). Further adding to my confusion is why the early printk > magic didn't dump a stack as I believe I had that setup on my commandline. > But I figured I would just report what I have observed. > If the kdump is initiated from NMI context, I'm wondering if it might be possible that we haven't actually executed an IRET until this one happens, and the IRET re-enables NMI. > My testing and debugging were based off a 3.10 kernel (RHEL-7) but has included > Seiji's tracepoint cleanups to arch/x86/kernel/head_64.S|head64.c. Not much > has changed upstream here. Also 3.14-rc4 still has the same hang. > > Signed-off-by: Don Zickus We really shouldn't be doing the fixup lookup for NMI, either. Probably it makes more sense to just IRET on NMI until we have the real interrupt vectors set up, but it needs to be done a little earlier. How does this patch work for you? -hpa