HomeFreeBSD

Rework vNMI injection.

Description

Rework vNMI injection.

Keep track of NMI blocking by enabling the IRET intercept on a successful
vNMI injection. The NMI blocking condition is cleared when the handler
executes an IRET and traps back into the hypervisor.

Don't inject NMI if the processor is in an interrupt shadow to preserve the
atomic nature of "STI;HLT". Take advantage of this and artificially set the
interrupt shadow to prevent NMI injection when restarting the "iret".

Reviewed by: Anish Gupta (akgupt3@gmail.com), grehan

Details

Provenance
neelAuthored on
Reviewer
grehan
Parents
rS271693: Fix elfdump(1) usage in the userland CTF tests.
Branches
Unknown
Tags
Unknown

Event Timeline