On 01.08.2012 16:08, Avi Kivity wrote: > On 08/01/2012 04:39 PM, Gleb Natapov wrote: >> On Wed, Aug 01, 2012 at 01:29:11PM +0200, Stefan Bader wrote: >>> I have been looking at a report[1] about the kvm_intel module failing to load on >>> linux v3.3 and newer guests when running on a v3.2 host. Bisection turned up the >>> following patch: >>> >>> commit fee84b079d5ddee2247b5c1f53162c330c622902 >>> Author: Avi Kivity <avi@xxxxxxxxxx> >>> Date: Thu Nov 10 14:57:25 2011 +0200 >>> >>> KVM: VMX: Intercept RDPMC >>> >>> Intercept RDPMC and forward it to the PMU emulation code. >>> >>> Signed-off-by: Avi Kivity <avi@xxxxxxxxxx> >>> Signed-off-by: Gleb Natapov <gleb@xxxxxxxxxx> >>> Signed-off-by: Avi Kivity <avi@xxxxxxxxxx> >>> >>> It looks like requiring the feature based on cpu fails when the host (outer kvm >>> module) code does not support it. So maybe that should be optional instead of >>> required? >> According to Intel SDM there was never CPU that didn't support RDPMC >> exiting. Looks like unfortunate nested VMX bug. > > Moreover, that same commit fixes the bug in nested vmx. So if you > update your host kernel to the same version as your L1 guest (or, at > your option, any later version) it should work. > > We could backport that part of the patch, though as nested vmx is still > experimential, I don't think it's worth it. > Though this is probably what people will (or will have to) do. The host is not always under your control. Even with it being experimental, it was working (at least the module was loadable) before and is now broken on Intel hosts. But ok, so the recommendation is to rather backport support to the host kernel than to try handling this differently in the guest module, right?
Attachment:
signature.asc
Description: OpenPGP digital signature