Bug 54471
Summary: | nVMX: TRUE* MSRs unnecessary | ||
---|---|---|---|
Product: | Virtualization | Reporter: | Nadav Har'El (nyh) |
Component: | kvm | Assignee: | virtualization_kvm |
Status: | RESOLVED INVALID | ||
Severity: | enhancement | CC: | bonzini |
Priority: | P1 | ||
Hardware: | All | ||
OS: | Linux | ||
Kernel Version: | 3.19 | Subsystem: | |
Regression: | No | Bisected commit-id: | |
Bug Depends on: | |||
Bug Blocks: | 94971, 53601 |
Description
Nadav Har'El
2013-02-25 14:04:47 UTC
Reply-To: jan.kiszka@siemens.com On 2013-02-25 15:04, bugzilla-daemon@bugzilla.kernel.org wrote: > https://bugzilla.kernel.org/show_bug.cgi?id=54471 > > Summary: nVMX: TRUE* MSRs unnecessary > Product: Virtualization > Version: unspecified > Platform: All > OS/Version: Linux > Tree: Mainline > Status: NEW > Severity: enhancement > Priority: P1 > Component: kvm > AssignedTo: virtualization_kvm@kernel-bugs.osdl.org > ReportedBy: nyh@math.technion.ac.il > Regression: No > > > According to the spec, the TRUE* MSRs are only necessary if bit 55 of > VMX_BASIC > is on. Since we don't set this bit, we don't need to provide these MSRs... > So probably we shouldn't. I tend to say we should (i.e. set bit 55) as there is the risk that buggy guests could needlessly get confused when we expose very recent features (like EPT) and do not provide such "old-fashioned" stuff. Jan TRUE_* is needed to tell the guest that it can disable CR3 load/store exits. We were enabling this control by exposing a broken MSR_IA32_VMX_PROCBASED_CTLS value, but commit 560b7ee12ca5 (KVM: nVMX: Fix returned value of MSR_IA32_VMX_PROCBASED_CTLS, 2014-06-16). So we can no longer remove the TRUE_* MSRs. |