Skip to contentSkip to conversation

nestedsvm: Support Decodeassist

PATCH New Christoph Egger 1 participant 1 message Jun 3, 2011

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 nestedsvm: Support Decodeassist

Offer l1 guest to use decode assist if available in hardware.

Signature · 6 lines
---to satisfy European Law for business letters:
Advanced Micro Devices GmbH
Einsteinring 24, 85689 Dornach b. Muenchen
Geschaeftsfuehrer: Alberto Bozzo, Andrew Bowd
Sitz: Dornach, Gemeinde Aschheim, Landkreis Muenchen
Registergericht Muenchen, HRB Nr. 43632
tools/libxc/xc_cpuid_x86.c +2 -1
diff -r 2007b3ab2f11 tools/libxc/xc_cpuid_x86.c
@@ -153,7 +153,8 @@ static void amd_xc_cpuid_policy(
          * available in hw and which are implemented
          */
         regs[3] &= (SVM_FEATURE_NPT | SVM_FEATURE_LBRV | \
-            SVM_FEATURE_NRIPS | SVM_FEATURE_PAUSEFILTER);
+            SVM_FEATURE_NRIPS | SVM_FEATURE_PAUSEFILTER | \
+            SVM_FEATURE_DECODEASSISTS);
 
         /* Pass 2: Always enable SVM features which are emulated */
         regs[3] |= SVM_FEATURE_VMCBCLEAN;
xen/arch/x86/hvm/svm/nestedsvm.c +4 -0
diff -r 2007b3ab2f11 xen/arch/x86/hvm/svm/nestedsvm.c
@@ -1056,6 +1056,10 @@ nsvm_vmcb_prepare4vmexit(struct vcpu *v)
     /* NextRIP */
     ns_vmcb->nextrip = n2vmcb->nextrip;
 
+    /* Decode Assist */
+    ns_vmcb->guest_ins_len = n2vmcb->guest_ins_len;
+    memcpy(ns_vmcb->guest_ins, n2vmcb->guest_ins, sizeof(ns_vmcb->guest_ins));
+
     /*
      * VMCB Save State Area
      */

_______________________________________________
Xen-devel mailing list
[email protected]
http://lists.xensource.com/xen-devel