|
|
|
|
|
|
|
|
|
|
xen-changelog
[Xen-changelog] [xen-4.1-testing] x86: clear CPUID output of leaf 0xd fo
# HG changeset patch
# User Jan Beulich <jbeulich@xxxxxxxxxx>
# Date 1305895776 -3600
# Node ID b2d0c08b99b5a4115c67bf2188391c59eb9dcd20
# Parent 9c8273ccdaced3660c42f96e2740e27d3a9d02e0
x86: clear CPUID output of leaf 0xd for Dom0 when xsave is disabled
Linux starting with 2.6.36 uses the XSAVEOPT instruction and has
certain code paths that look only at the feature bit reported through
CPUID leaf 0xd sub-leaf 1 (i.e. without qualifying the check with one
evaluating leaf 4 output). Consequently the hypervisor ought to mimic
actual hardware in clearing leaf 0xd output when not supporting xsave.
Signed-off-by: Jan Beulich <jbeulich@xxxxxxxxxx>
xen-unstable changeset: 23353:a768a10d32b4
xen-unstable date: Fri May 20 08:54:45 2011 +0100
---
diff -r 9c8273ccdace -r b2d0c08b99b5 xen/arch/x86/traps.c
--- a/xen/arch/x86/traps.c Fri May 20 13:48:40 2011 +0100
+++ b/xen/arch/x86/traps.c Fri May 20 13:49:36 2011 +0100
@@ -806,6 +806,10 @@
__clear_bit(X86_FEATURE_NODEID_MSR % 32, &c);
__clear_bit(X86_FEATURE_TOPOEXT % 32, &c);
break;
+ case 0xd: /* XSAVE */
+ if ( xsave_enabled(current) )
+ break;
+ /* fall through */
case 5: /* MONITOR/MWAIT */
case 0xa: /* Architectural Performance Monitor Features */
case 0x8000000a: /* SVM revision and features */
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|
<Prev in Thread] |
Current Thread |
[Next in Thread> |
- [Xen-changelog] [xen-4.1-testing] x86: clear CPUID output of leaf 0xd for Dom0 when xsave is disabled,
Xen patchbot-4 . 1-testing <=
|
|
|
|
|