Avi Kivity wrote: > Jan Kiszka wrote: >> Sheng, >> >> out of curiosity: vmx_vcpu_run invokes 'int $2' to trigger a host NMI if >> the VM exited due to an external NMI event. According to Intel specs I >> have, software-triggered NMIs do not block hardware NMIs. So are we >> facing the risk to receive another NMI while running the first handler? >> Or will the VM be left with the hardware blocking logic armed? Or does >> Linux not care about NMI handler re-entrance? >> > > All good questions. Usually this doesn't happen since NMI sources are > far apart (oprofile, watchdog).
Only true until you have multiple unsynchronized NMI sources, e.g. inter-CPU NMIs of kgdb + a watchdog. I just stumbled over several bugs in kvm's and my own NMI code that were triggered by such a scenario (sigh...). > > Maybe the answer is to generate the local nmi via an IPI-to-self command > to the local apic. > That sounds like a good idea, will look into this right after fixing the other NMI issues. Jan
signature.asc
Description: OpenPGP digital signature