Xen (HVM) and NMI

Andriy Gapon avg at FreeBSD.org
Thu Nov 7 18:08:41 UTC 2019


Does Xen provide any support for non-maskable interrupts interrupt delivery to a
guest?

I am trying to debug a particular crash in a Xen guest, but it seems that the
FreeBSD crash code (stop_cpus specifically) cannot interrupt some processors
and, thus, take control of them and collect their context.

For CPUs that do get interrupted I see stack traces like:
cpustop_handler+0x28 ipi_nmi_handler+0x44 xen_cpustophard_handler+0x9
intr_event_handle+0x8b intr_execute_handlers+0x58 xen_intr_handle_upcall+0x15a
xen_intr_upcall_u+0x96 ...
So, it looks like the NMI is delivered by the same mechanism as normal
interrupts.  If a processor has interrupts disabled then the NMI would not get
delivered?

Is there anything we could do to improve this?
Thank you!

-- 
Andriy Gapon


More information about the freebsd-xen mailing list