|
|
|
|
|
|
|
|
|
|
xen-changelog
[Xen-changelog] [xen-unstable] vmx: Write back modified interruptibility
# HG changeset patch
# User kfraser@xxxxxxxxxxxxxxxxxxxxx
# Date 1183541658 -3600
# Node ID e7d40fadbf170e1e6eb2844fb8a578f415cd5073
# Parent e6d5e4709466b66146d2538574df9704ecb9a5e1
vmx: Write back modified interruptibility-info in enable_intr_window().
Signed-off-by: Keir Fraser <keir@xxxxxxxxxxxxx>
---
xen/arch/x86/hvm/vmx/intr.c | 4 +++-
1 files changed, 3 insertions(+), 1 deletion(-)
diff -r e6d5e4709466 -r e7d40fadbf17 xen/arch/x86/hvm/vmx/intr.c
--- a/xen/arch/x86/hvm/vmx/intr.c Tue Jul 03 18:46:00 2007 +0100
+++ b/xen/arch/x86/hvm/vmx/intr.c Wed Jul 04 10:34:18 2007 +0100
@@ -96,6 +96,7 @@ static void enable_intr_window(struct vc
/* Having both STI-blocking and MOV-SS-blocking fails vmentry. */
intr_shadow &= ~VMX_INTR_SHADOW_STI;
intr_shadow |= VMX_INTR_SHADOW_MOV_SS;
+ __vmwrite(GUEST_INTERRUPTIBILITY_INFO, intr_shadow);
}
ctl = CPU_BASED_VIRTUAL_NMI_PENDING;
}
@@ -169,7 +170,6 @@ asmlinkage void vmx_intr_assist(void)
if ( unlikely(idtv_info_field & 0x800) ) /* valid error code */
__vmwrite(VM_ENTRY_EXCEPTION_ERROR_CODE,
__vmread(IDT_VECTORING_ERROR_CODE));
- enable_intr_window(v, intr_source);
/*
* Clear NMI-blocking interruptibility info if an NMI delivery
@@ -180,6 +180,8 @@ asmlinkage void vmx_intr_assist(void)
__vmread(GUEST_INTERRUPTIBILITY_INFO) &
~VMX_INTR_SHADOW_NMI);
+ enable_intr_window(v, intr_source);
+
HVM_DBG_LOG(DBG_LEVEL_1, "idtv_info_field=%x", idtv_info_field);
return;
}
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|
<Prev in Thread] |
Current Thread |
[Next in Thread> |
- [Xen-changelog] [xen-unstable] vmx: Write back modified interruptibility-info in enable_intr_window().,
Xen patchbot-unstable <=
|
|
|
|
|