On 21. 03. 24, 12:50, liu....@h3c.com wrote:
From: LiuYe <liu....@h3c.com>
Currently, if CONFIG_KDB_KEYBOARD is enabled, then kgdboc will
attempt to use schedule_work() to provoke a keyboard reset when
transitioning out of the debugger and back to normal operation.
This can cause deadlock because schedule_work() is not NMI-safe.
The stack trace below shows an example of the problem. In this
case the master cpu is not running from NMI but it has parked
the slave CPUs using an NMI and the parked CPUs is holding
spinlocks needed by schedule_work().
I am missing here an explanation (perhaps because I cannot find any docs
for irq_work) why irq_work works in this case.
And why you need to schedule another work in the irq_work and not do the
job directly.
thanks,
--
js
suse labs
_______________________________________________
Kgdb-bugreport mailing list
Kgdb-bugreport@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/kgdb-bugreport