Keir, thanks!
It is my fault that I did not notice that piece of code.
Best Regards
Haitao Shan
-----Original Message-----
From: Keir Fraser [mailto:keir@xxxxxxxxxxxxx]
Sent: 2007年7月4日 17:32
To: Shan, Haitao; xen-devel@xxxxxxxxxxxxxxxxxxx
Cc: Li, Xin B; Li, Susie; Dong, Eddie; Cui, Dexuan
Subject: Re: [Xen-devel] RE: [Patch] Add NMI Injection and Pending Support inVMX
On 4/7/07 05:44, "Shan, Haitao" <haitao.shan@xxxxxxxxx> wrote:
> 1> If we do have IDT vectoring occurs, and at the same time, a NMI or irq is
> pending, should we better do a check to enable_intr_window instead of just
> return?
> if ( (idtv_info_field&INTR_INFO_INTR_TYPE_MASK) == INTR_TYPE_NMI )
> __vmwrite(GUEST_INTERRUPTIBILITY_INFO,
> __vmread(GUEST_INTERRUPTIBILITY_INFO) &
> ~VMX_INTR_SHADOW_NMI);
> HVM_DBG_LOG(DBG_LEVEL_1, "idtv_info_field=%x", idtv_info_field);
> return;
That case does include a call to enable_intr_window(), immediately before
the code you quote. Did you miss that?
> -----------------------------The second question is here----------------
> 2> In enable_intr_window, if it is an NMI, then change intr_shadow from
> blocking_by_sti to blocking_by_movss if there is such case. But the
> intr_shadow is not written back to VMCS. Why should we do so?
This is a stupid mistake on my part. I'll fix it.
Thanks,
Keir
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|