Skip to contentSkip to conversation

New: nVMX: MSR_IA32_FEATURE_CONTROL

Bug 53621 [email protected] 1 participant 5 messages Feb 11, 2013 – Apr 8, 2015 KVM

lore
Share & tools
lore
#0 lore raw

https://bugzilla.kernel.org/show_bug.cgi?id=53621

Summary: nVMX: MSR_IA32_FEATURE_CONTROL
Product: Virtualization
Version: unspecified
Platform: All
OS/Version: Linux
Tree: Mainline
Status: NEW
Severity: enhancement
Priority: P1
Component: kvm
AssignedTo: [email protected]
ReportedBy: [email protected]
Regression: No

The existing code emulates the guest's use of the IA32_FEATURE_CONTROL MSR in a way that was enough to run nested VMX guests, but did not fully conform to the VMX specification, and in particular did not allow a guest BIOS to prevent the guest OS from using VMX by setting the lock bit on this MSR.

This simple patch emulates this MSR better, allowing the guest to lock it, and verifying its setting on VMXON. Also make sure that this MSR (and of course, VMXON state) is reset on guest vcpu reset (via SIPI).

This patch stems from these discussions:

http://comments.gmane.org/gmane.comp.emulators.kvm.devel/87759
http://comments.gmane.org/gmane.comp.emulators.kvm.devel/87846

I'm not sure why it wasn't accepted. The only remaining issue appeared to be this:

Quoted 2 lines
Quoted 2 lines

Review

Quoted 2 lines
(quoted diff) +2 -0
+#define VMXON_NEEDED_FEATURES \
+      (FEATURE_CONTROL_LOCKED |

FEATURE_CONTROL_VMXON_ENABLED_OUTSIDE_SMX)

Move it to the top of the file, or as a variable at the top of the function please.

Signature · 3 lines
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching the assignee of the bug.
#1 lore raw

[Bug 53621] nVMX: MSR_IA32_FEATURE_CONTROL

https://bugzilla.kernel.org/show_bug.cgi?id=53621

--- Comment #1 from Nadav Har'El <[email protected]> 2013-02-11 13:12:57 --- Created an attachment (id=93111)
--> (https://bugzilla.kernel.org/attachment.cgi?id=93111)
Patch for better MSR_IA32_FEATURE_CONTROL emulation

Signature · 3 lines
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching the assignee of the bug.
#2 lore raw

[Bug 53621] nVMX: MSR_IA32_FEATURE_CONTROL

In reply to [email protected]

https://bugzilla.kernel.org/show_bug.cgi?id=53621

Nadav Har'El <[email protected]> changed:

What |Removed |Added
----------------------------------------------------------------------------

             Blocks|                            |53601
Signature · 3 lines
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching the assignee of the bug.
#4 lore raw

[Bug 53621] nVMX: MSR_IA32_FEATURE_CONTROL

In reply to [email protected]

https://bugzilla.kernel.org/show_bug.cgi?id=53621

Paolo Bonzini <[email protected]> changed:

What |Removed |Added
----------------------------------------------------------------------------

             Status|NEW                         |RESOLVED
                 CC|                            |[email protected]
     Kernel Version|                            |3.19
         Resolution|---                         |CODE_FIX

--- Comment #2 from Paolo Bonzini <[email protected]> --- Fixed by commit b3897a49e22f (KVM: nVMX: Fix read/write to MSR_IA32_FEATURE_CONTROL, 2013-07-08).

Signature · 2 lines
You are receiving this mail because:
You are watching the assignee of the bug.