Re: [V2 PATCH 0/6] x86, NMI: give NMI handler a face-lift

From: Don Zickus
Date: Fri Nov 12 2010 - 10:42:55 EST


On Fri, Nov 12, 2010 at 09:05:03AM -0600, Jason Wessel wrote:
> On 11/12/2010 08:43 AM, Don Zickus wrote:
> > Restructuring the nmi handler to be more readable and simpler.
> >
> > This is just laying the ground work for future improvements in this area.
> >
> > I also left out one of Huang's patch until we figure out how we are going
> > to proceed with a new notifier.
> >
> > Tested 32-bit and 64-bit on AMD and Intel machines.
> >
> > V2: add a patch to kill DIE_NMI_IPI and add in priorities
> >
> >
>
> Had you tested this code with kgdb boot tests at all?
>
> CONFIG_LOCKUP_DETECTOR=y
> CONFIG_HARDLOCKUP_DETECTOR=y
> CONFIG_KGDB=y
> CONFIG_KGDB_TESTS_ON_BOOT=y
> CONFIG_KGDB_TESTS_BOOT_STRING="V1F100"
>
> There has been a regression in kgdb due to the use of perf/NMI in the
> lockup detector ever since the new version has been introduced. The
> perf callbacks in the lockup detector were consuming NMI events not
> related to the call back and causing the kernel debugger not to work at
> all on SMP systems configured with the lockup detector.

Well 2.6.36 should have fixed that. Perf was blindly eating all NMI
events if it had a user. With the new lockup detector, that created a
'user' for perf and it happily ate everything. But we spent a lot of time
trying to fix that for 2.6.36. If we missed something, we would like to
know.

To answer your question, I doubt this patch series will change that
outcome if it is still broken.

>
> I was curious to know if this patch series fixed the problem as well as
> to know if you could run the regression test when you make changes
> related to the lockup / NMI path as it affects the kernel debug API.

Absolutely. I look forward to running tests with consumers of NMI other
than perf. :-)

Thanks for the tip.

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/