Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1528709

Re: [PATCH 3/4] KVM: nVMX: accurate emulation of MSR_IA32_CR{0,4}_FIXED1

From Paolo Bonzini <pbonzini@redhat.com>
Newsgroups linux.kernel
Subject Re: [PATCH 3/4] KVM: nVMX: accurate emulation of MSR_IA32_CR{0,4}_FIXED1
Date 2016-11-23 20:30 +0100
Message-ID <sGLoZ-xy-15@gated-at.bofh.it> (permalink)
References <sGuo9-6vC-5@gated-at.bofh.it> <sGuo9-6vC-3@gated-at.bofh.it> <sGBJ0-2TX-33@gated-at.bofh.it> <sGLfj-uo-21@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw



On 23/11/2016 20:16, David Matlack wrote:
> > Oh, I thought userspace would do that!  Doing it in KVM is fine as well,
> > but then do we need to give userspace access to CR{0,4}_FIXED{0,1} at all?
>
> I think it should be safe for userspace to skip restoring CR4_FIXED1,
> since it is 100% generated based on CPUID. But I'd prefer to keep it
> accessible from userspace, for consistency with the other VMX MSRs and
> for flexibility. The auditing should ensure userspace doesn't restore
> a CR4_FIXED1 that is inconsistent with CPUID.

Or would it just allow userspace to put anything into it, even if it's
inconsistent with CPUID, as long as it's consistent with the host?

> Userspace should restore CR0_FIXED1 in case future CPUs change which
> bits of CR0 are valid in VMX operation. Userspace should also restore
> CR{0,4}_FIXED0 so we have the flexibility to change the defaults in
> KVM. Both of these situations seem unlikely but we might as well play
> it safe, the cost is small.

I disagree, there is always a cost.  Besides the fact that it's
unlikely that there'll be any future CR0 bits at all, any changes would
most likely be keyed by a new CPUID bit (the same as CR4) or execution
control (the same as unrestricted guest).

In the end, since we assume that userspace (any) has no idea of what to
do with it, I see no good reason to make the MSRs available.

Paolo

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH 3/4] KVM: nVMX: accurate emulation of MSR_IA32_CR{0,4}_FIXED1 David Matlack <dmatlack@google.com> - 2016-11-23 02:20 +0100
  Re: [PATCH 3/4] KVM: nVMX: accurate emulation of  MSR_IA32_CR{0,4}_FIXED1 Paolo Bonzini <pbonzini@redhat.com> - 2016-11-23 10:10 +0100
    Re: [PATCH 3/4] KVM: nVMX: accurate emulation of MSR_IA32_CR{0,4}_FIXED1 David Matlack <dmatlack@google.com> - 2016-11-23 20:20 +0100
      Re: [PATCH 3/4] KVM: nVMX: accurate emulation of  MSR_IA32_CR{0,4}_FIXED1 Paolo Bonzini <pbonzini@redhat.com> - 2016-11-23 20:30 +0100
        Re: [PATCH 3/4] KVM: nVMX: accurate emulation of MSR_IA32_CR{0,4}_FIXED1 David Matlack <dmatlack@google.com> - 2016-11-23 23:10 +0100
          Re: [PATCH 3/4] KVM: nVMX: accurate emulation of  MSR_IA32_CR{0,4}_FIXED1 Paolo Bonzini <pbonzini@redhat.com> - 2016-11-23 23:20 +0100
            Re: [PATCH 3/4] KVM: nVMX: accurate emulation of MSR_IA32_CR{0,4}_FIXED1 David Matlack <dmatlack@google.com> - 2016-11-24 00:30 +0100

csiph-web