25 lines
828 B
Diff
25 lines
828 B
Diff
|
References: bnc#835896
|
||
|
|
||
|
# Commit 69962e19ed432570f6cdcfdb5f6f22d6e3c54e6c
|
||
|
# Date 2013-08-22 11:24:00 +0200
|
||
|
# Author Juergen Gross <juergen.gross@ts.fujitsu.com>
|
||
|
# Committer Jan Beulich <jbeulich@suse.com>
|
||
|
Correct X2-APIC HVM emulation
|
||
|
|
||
|
commit 6859874b61d5ddaf5289e72ed2b2157739b72ca5 ("x86/HVM: fix x2APIC
|
||
|
APIC_ID read emulation") introduced an error for the hvm emulation of
|
||
|
x2apic. Any try to write to APIC_ICR MSR will result in a GP fault.
|
||
|
|
||
|
Signed-off-by: Juergen Gross <juergen.gross@ts.fujitsu.com>
|
||
|
|
||
|
--- a/xen/arch/x86/hvm/vlapic.c
|
||
|
+++ b/xen/arch/x86/hvm/vlapic.c
|
||
|
@@ -868,6 +868,7 @@ int hvm_x2apic_msr_write(struct vcpu *v,
|
||
|
rc = vlapic_reg_write(v, APIC_ICR2, (uint32_t)(msr_content >> 32));
|
||
|
if ( rc )
|
||
|
return rc;
|
||
|
+ break;
|
||
|
|
||
|
case APIC_ICR2:
|
||
|
return X86EMUL_UNHANDLEABLE;
|