Re: [PATCH v5 1/5] arm64: Add framework to turn IPI as NMI
From: Sumit Garg <hidden>
Date: 2020-10-21 05:22:27
Also in:
lkml
On Tue, 20 Oct 2020 at 18:02, Marc Zyngier [off-list ref] wrote:
On 2020-10-20 13:25, Daniel Thompson wrote:quoted
On Tue, Oct 20, 2020 at 04:52:43PM +0530, Sumit Garg wrote:[...]quoted
quoted
So in general, IPI as a normal IRQ is still useful for debugging but it can't debug a core which is stuck in deadlock with interrupts disabled. And since we choose override default implementations for pseudo NMI support, we need to be backwards compatible for platforms which don't possess pseudo NMI support.Do the fallback implementations require a new IPI? The fallbacks could rely on existing mechanisms such as the smp_call_function family.Indeed. I'd be worried of using that mechanism for NMIs, but normal IPIs should stick to the normal cross-call stuff.
Yes, the fallback implementations could rely on existing cross-call stuff but current framework only allows this fallback choice at compile time and to make this choice at runtime, we need additional framework changes like allowing arch_trigger_cpumask_backtrace() to return a boolean in order to switch to fallback mode, similar would be the case for kgdb. I think this should be doable but I am still not sure regarding the advantages of using existing IPI vs new IPI (which we will already use in case of pseudo NMI support) as normal IRQ.
The jury is still out on why this is a good idea, given that it doesn't work in the only interesting case (deadlocked CPUs).
I think CPU soft-lockups (interrupts enabled) is an interesting case to debug as well. -Sumit
M.
--
Jazz is not dead. It just smells funny..._______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel