]> xenbits.xensource.com Git - qemu-xen-3.4-testing.git/commitdiff
i386/SVM: return amount of ASIDs
authoraurel32 <aurel32@c046a42c-6fe2-441c-8c8c-71466251a162>
Fri, 17 Oct 2008 08:08:48 +0000 (08:08 +0000)
committeraurel32 <aurel32@c046a42c-6fe2-441c-8c8c-71466251a162>
Fri, 17 Oct 2008 08:08:48 +0000 (08:08 +0000)
With SVM the TLB supports tagging to distinguish TLB entries from
different virtual CPUs. This tag is called an ASID. The amount of ASIDs is
given in EBX of the SVM-CPUID-leaf. Currently we return 0, which might
break hypervisors. Let's better return something >0 here, say 0x10.
Since we're flushing the complete TLB on every VM entry and exit we're not
making use of the ASID information anyways.

Signed-off-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5496 c046a42c-6fe2-441c-8c8c-71466251a162

target-i386/op_helper.c

index 644598a4b9dccd7f06e3b61e7e2afbe9239a05d4..ebb5824544b84c1fcc2983807f73a1b70e45c813 100644 (file)
@@ -2037,10 +2037,10 @@ void helper_cpuid(void)
         EDX = 0;
         break;
     case 0x8000000A:
-        EAX = 0x00000001;
-        EBX = 0;
+        EAX = 0x00000001; /* SVM Revision */
+        EBX = 0x00000010; /* nr of ASIDs */
         ECX = 0;
-        EDX = 0;
+        EDX = 0; /* optional features */
         break;
     default:
         /* reserved values: zero */