On Monday 19 April 2010 16:25:17 Avi Kivity wrote:
On 04/17/2010 09:12 PM, Avi Kivity wrote:My fault...
I think you were right the first time around.Re-reading again (esp. the part about treatment of indirect NMI
vmexits), I think this was wrong, and that the code is correct. I am
now thoroughly confused.
To my understanding now, "If an event causes a VM exit directly, it does not
update architectural state as it would have if it had it not caused the VM
exit:", means: in NMI case, NMI would involve the NMI handler, and change the
"architectural state" to NMI block. In VMX non-root mode, the behavior of
calling NMI handler changed(determine by some VMCS fields), but not the
affection to the "architectural state". So the NMI block state would remain
the same.