From: Gleb Natapov <gleb@redhat.com>
To: Paolo Bonzini <pbonzini@redhat.com>
Cc: Arthur Chunqi Li <yzt356@gmail.com>,
kvm@vger.kernel.org, jan.kiszka@web.de
Subject: Re: [PATCH] KVM : Fix read/write to IA32_FEATURE_CONTROL MSR in nested virt
Date: Thu, 4 Jul 2013 15:43:12 +0300 [thread overview]
Message-ID: <20130704124312.GN5113@redhat.com> (raw)
In-Reply-To: <51D56BC3.5090409@redhat.com>
On Thu, Jul 04, 2013 at 02:34:11PM +0200, Paolo Bonzini wrote:
> Il 04/07/2013 13:31, Gleb Natapov ha scritto:
> > On Thu, Jul 04, 2013 at 01:21:51PM +0200, Paolo Bonzini wrote:
> >> Il 04/07/2013 13:12, Gleb Natapov ha scritto:
> >>>> I don't like that it requires a firmware change in order to use nested
> >>>> VMX (at least for hypervisors that read the MSR). "Worse emulation" and
> >>>> "better emulation + new firmware" are indistiguishable from the point of
> >>>> view of anyone except the firmware.
> >>>>
> >>>> IMO there is no reason for a better emulation that no one would care
> >>>> about _and_ could look like a regression when updating to a newer kernel.
> >>>
> >>> That is why now is the good time to do that since nested vmx is not
> >>> widely used. When it will be widely used the change will be impossible
> >>> to do for reason you age giving. So it is now or never.
> >>
> >> I think it is a can of worms. For example, should this be
> >> conditionalized on running under QEMU? Under UEFI, TianoCore should be
> >> doing it, not SeaBIOS. And for CoreBoot, should it be done by CoreBoot
> >> or SeaBIOS? (How do people use KVM together with CoreBoot?)
> >>
> > This is not the first thing that firmware need to initialize. I let
> > firmware guys fight over who is doing it, we just model HW. FWIW for
> > Seabios patch would be trivial.
>
> Trivial but still depending on the question "who is doing it". If
> CoreBoot should (also) be doing it, the SeaBIOS patch should be
> conditional on CONFIG_QEMU. Also, should it be unconditional or depend
> on some external configuration knob (as on a bare-metal firmware)?
>
Let firmware developers solve firmware problems. They have all the same
problems when running on real HW and they will have to figure out a
solution regardless. Making things different on virt will only cause
people to treat virt differently (remember irqbalance?).
> Actually KVM probes MSR_IA32_FEATURE_CONTROL itself and sets the bits,
> so we can sidestep the whole firmware thing, and go with a fixed version
> of Nadav's patch.
>
Indeed, so no regression will be seen even temporary.
> >> So I still prefer never... :)
> >
> > This is a "can of worms" IMO. What we decide to init in KVM next to
> > relieve firmware from its duty? This is "other hypervisor" way, in KVM
> > we just model HW.
>
> FWIW, I now checked Xen nested VMX and it just returns 5, but this has
> nothing to do with paravirtualization).
>
> Paolo
--
Gleb.
next prev parent reply other threads:[~2013-07-04 12:43 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-07-03 13:41 [PATCH] KVM : Fix read/write to IA32_FEATURE_CONTROL MSR in nested virt Arthur Chunqi Li
2013-07-04 7:00 ` Paolo Bonzini
2013-07-04 7:10 ` Gleb Natapov
2013-07-04 7:21 ` Arthur Chunqi Li
2013-07-04 7:24 ` Gleb Natapov
2013-07-04 8:16 ` Gmail
2013-07-04 10:43 ` Gleb Natapov
2013-07-04 11:01 ` Paolo Bonzini
2013-07-04 11:12 ` Gleb Natapov
2013-07-04 11:21 ` Paolo Bonzini
2013-07-04 11:31 ` Gleb Natapov
2013-07-04 12:34 ` Paolo Bonzini
2013-07-04 12:43 ` Gleb Natapov [this message]
2013-07-05 3:26 ` Arthur Chunqi Li
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20130704124312.GN5113@redhat.com \
--to=gleb@redhat.com \
--cc=jan.kiszka@web.de \
--cc=kvm@vger.kernel.org \
--cc=pbonzini@redhat.com \
--cc=yzt356@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.