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/
Home Products Support Community News


[Xen-changelog] [xen-unstable] vmx: Fix the 2nd argument of cpuid_count(

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [xen-unstable] vmx: Fix the 2nd argument of cpuid_count() in vmx_cpuid_intercept()
From: Xen patchbot-unstable <patchbot-unstable@xxxxxxxxxxxxxxxxxxx>
Date: Sat, 29 Dec 2007 13:30:09 -0800
Delivery-date: Sat, 29 Dec 2007 13:30:07 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
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/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/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.fraser@xxxxxxxxxx>
# Date 1198950947 0
# Node ID 43aab98aef608c058260c4c1caf662ed06dfac18
# Parent  688e9186eed4a882843f108ac5b59ca68ba8b69e
vmx: Fix the 2nd argument of cpuid_count() in vmx_cpuid_intercept()

For input 0x00000004, the value of "*ecx" has been overwritten by the
cpuid() in hvm_cpuid(), causing a bad value passed to cpuid_count().

Signed-off-by: Dexuan Cui <dexuan.cui@xxxxxxxxx>
 xen/arch/x86/hvm/vmx/vmx.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletion(-)

diff -r 688e9186eed4 -r 43aab98aef60 xen/arch/x86/hvm/vmx/vmx.c
--- a/xen/arch/x86/hvm/vmx/vmx.c        Sat Dec 29 17:52:34 2007 +0000
+++ b/xen/arch/x86/hvm/vmx/vmx.c        Sat Dec 29 17:55:47 2007 +0000
@@ -1235,6 +1235,7 @@ void vmx_cpuid_intercept(
     unsigned int *ecx, unsigned int *edx)
     unsigned int input = *eax;
+    unsigned int count = *ecx;
     if ( input == 0x40000003 )
@@ -1293,7 +1294,7 @@ void vmx_cpuid_intercept(
     case 0x00000004:
-        cpuid_count(input, *ecx, eax, ebx, ecx, edx);
+        cpuid_count(input, count, eax, ebx, ecx, edx);
         *eax &= NUM_CORES_RESET_MASK;

Xen-changelog mailing list

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] [xen-unstable] vmx: Fix the 2nd argument of cpuid_count() in vmx_cpuid_intercept(), Xen patchbot-unstable <=