WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-changelog

[Xen-changelog] [xen-4.0-testing] x86 hvm: Do not overwrite boot-cpu cap

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [xen-4.0-testing] x86 hvm: Do not overwrite boot-cpu capability data on VMX/SVM startup.
From: "Xen patchbot-4.0-testing" <patchbot-4.0-testing@xxxxxxxxxxxxxxxxxxx>
Date: Tue, 30 Nov 2010 20:20:16 -0800
Delivery-date: Tue, 30 Nov 2010 20:20:44 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-changelog-request@lists.xensource.com?subject=help>
List-id: BK change log <xen-changelog.lists.xensource.com>
List-post: <mailto:xen-changelog@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=unsubscribe>
Reply-to: xen-devel@xxxxxxxxxxxxxxxxxxx
Sender: xen-changelog-bounces@xxxxxxxxxxxxxxxxxxx
# HG changeset patch
# User Keir Fraser <keir@xxxxxxx>
# Date 1291117096 0
# Node ID 1f5186f596ba9023d53f0ed607473f80f90818f8
# Parent  465c81b077009ba3cb986caef2676c086718d71c
x86 hvm: Do not overwrite boot-cpu capability data on VMX/SVM startup.

Apparently required back in the earliest days of Xen, we now properly
initialise CPU capabilities early during bootstrap. Re-writing
capability data later now causes problems if specific features have
been deliberately masked out.

Thanks to Weidong Han at Intel for finding such a bug where XSAVE
feature is masked out by default, but then erroneously written back
during VMX initialisation. This would cause memory corruption problems
during boot for XSAVE-capable systems.

Signed-off-by: Keir Fraser <keir@xxxxxxx>
xen-unstable changeset:   22451:8420b82c22c2
xen-unstable date:        Tue Nov 30 11:34:08 2010 +0000
---
 xen/arch/x86/hvm/svm/svm.c |    3 ---
 xen/arch/x86/hvm/vmx/vmx.c |    3 ---
 2 files changed, 6 deletions(-)

diff -r 465c81b07700 -r 1f5186f596ba xen/arch/x86/hvm/svm/svm.c
--- a/xen/arch/x86/hvm/svm/svm.c        Mon Nov 29 14:46:43 2010 +0000
+++ b/xen/arch/x86/hvm/svm/svm.c        Tue Nov 30 11:38:16 2010 +0000
@@ -889,9 +889,6 @@ void start_svm(struct cpuinfo_x86 *c)
         return;
     }
 
-    /* Xen does not fill x86_capability words except 0. */
-    boot_cpu_data.x86_capability[5] = cpuid_ecx(0x80000001);
-
     if ( !test_bit(X86_FEATURE_SVME, &boot_cpu_data.x86_capability) )
         return;
 
diff -r 465c81b07700 -r 1f5186f596ba xen/arch/x86/hvm/vmx/vmx.c
--- a/xen/arch/x86/hvm/vmx/vmx.c        Mon Nov 29 14:46:43 2010 +0000
+++ b/xen/arch/x86/hvm/vmx/vmx.c        Tue Nov 30 11:38:16 2010 +0000
@@ -1433,9 +1433,6 @@ void start_vmx(void)
         return;
     }
 
-    /* Xen does not fill x86_capability words except 0. */
-    boot_cpu_data.x86_capability[4] = cpuid_ecx(1);
-
     if ( !test_bit(X86_FEATURE_VMXE, &boot_cpu_data.x86_capability) )
         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-4.0-testing] x86 hvm: Do not overwrite boot-cpu capability data on VMX/SVM startup., Xen patchbot-4.0-testing <=