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


Groups > linux.kernel > #1516449

Re: [PATCH v8 7/7] KVM: x86: virtualize cpuid faulting

From Eduardo Habkost <ehabkost@redhat.com>
Newsgroups linux.kernel
Subject Re: [PATCH v8 7/7] KVM: x86: virtualize cpuid faulting
Date 2016-11-07 19:40 +0100
Message-ID <sAWZQ-6Y4-31@gated-at.bofh.it> (permalink)
References <sywdr-1Rv-15@gated-at.bofh.it> <sywds-1Rv-39@gated-at.bofh.it> <szTrk-6zi-15@gated-at.bofh.it> <szUGJ-7fK-1@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On Fri, Nov 04, 2016 at 10:57:27PM +0100, Paolo Bonzini wrote:
> 
> 
> On 04/11/2016 21:34, David Matlack wrote:
> > On Mon, Oct 31, 2016 at 6:37 PM, Kyle Huey <me@kylehuey.com> wrote:
> >> +       case MSR_PLATFORM_INFO:
> >> +               /* cpuid faulting is supported */
> >> +               msr_info->data = PLATINFO_CPUID_FAULT;
> >> +               break;
> > 
> > This could break save/restore, if for example, a VM is migrated to a
> > version of KVM without MSR_PLATFORM_INFO support. I think the way to
> > handle this is to make MSR_PLATFORM_INFO writeable (but only from
> > userspace) so that hypervisors can defend themselves (by setting this
> > MSR to 0).
> 
> Right---and with my QEMU hat on, this feature will have to be enabled
> manually on the command line because of the way QEMU supports running
> with old kernels. :(  This however does not impact the KVM patch.
> 
> We may decide that, because CPUID faulting doesn't have a CPUID bit and
> is relatively a "fringe" feature, we are okay if the kernel enables this
> unconditionally and then userspace can arrange to block migration (in
> QEMU this would use a subsection).  David, Eduardo, opinions?

Doing this would let guest code intentionally prevent the VM from
being migrated to some hosts. Maybe it would be still acceptable
to do it by default, maybe not. But even if we decide to do this
by default, I would like to have the ability to disable the
feature just in case we find out it was a bad idea.

-- 
Eduardo

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


Thread

[PATCH v8 0/7] x86/arch_prctl Add ARCH_[GET|SET]_CPUID for controlling the CPUID instruction Kyle Huey <me@kylehuey.com> - 2016-11-01 02:40 +0100
  [PATCH v8 5/7] x86/cpufeature: Detect CPUID faulting support Kyle Huey <me@kylehuey.com> - 2016-11-01 02:40 +0100
  [PATCH v8 7/7] KVM: x86: virtualize cpuid faulting Kyle Huey <me@kylehuey.com> - 2016-11-01 02:40 +0100
    Re: [PATCH v8 7/7] KVM: x86: virtualize cpuid faulting Paolo Bonzini <pbonzini@redhat.com> - 2016-11-01 15:30 +0100
      Re: [PATCH v8 7/7] KVM: x86: virtualize cpuid faulting Thomas Gleixner <tglx@linutronix.de> - 2016-11-01 19:40 +0100
        Re: [PATCH v8 7/7] KVM: x86: virtualize cpuid faulting Paolo Bonzini <pbonzini@redhat.com> - 2016-11-02 00:00 +0100
    Re: [PATCH v8 7/7] KVM: x86: virtualize cpuid faulting David Matlack <dmatlack@google.com> - 2016-11-04 21:40 +0100
      Re: [PATCH v8 7/7] KVM: x86: virtualize cpuid faulting Paolo Bonzini <pbonzini@redhat.com> - 2016-11-04 23:00 +0100
        Re: [PATCH v8 7/7] KVM: x86: virtualize cpuid faulting David Matlack <dmatlack@google.com> - 2016-11-05 01:10 +0100
          Re: [PATCH v8 7/7] KVM: x86: virtualize cpuid faulting Kyle Huey <me@kylehuey.com> - 2016-11-06 22:00 +0100
        Re: [PATCH v8 7/7] KVM: x86: virtualize cpuid faulting Eduardo Habkost <ehabkost@redhat.com> - 2016-11-07 19:40 +0100
  [PATCH v8 6/7] x86/arch_prctl: Add ARCH_[GET|SET]_CPUID Kyle Huey <me@kylehuey.com> - 2016-11-01 02:50 +0100
  [PATCH v8 1/7] x86/arch_prctl/64: Use SYSCALL_DEFINE2 to define sys_arch_prctl Kyle Huey <me@kylehuey.com> - 2016-11-01 02:50 +0100
  [PATCH v8 3/7] x86/arch_prctl: Add do_arch_prctl_common Kyle Huey <me@kylehuey.com> - 2016-11-01 02:50 +0100
  [PATCH v8 4/7] x86/syscalls/32: Wire up arch_prctl on x86-32 Kyle Huey <me@kylehuey.com> - 2016-11-01 02:50 +0100
  [PATCH v8 2/7] x86/arch_prctl/64: Rename do_arch_prctl to do_arch_prctl_64 Kyle Huey <me@kylehuey.com> - 2016-11-01 02:50 +0100

csiph-web