From: Juan Quintela <quintela@redhat.com>
To: "Michael S. Tsirkin" <mst@redhat.com>
Cc: Eduardo Habkost <ehabkost@redhat.com>,
gleb@redhat.com, kvm@vger.kernel.org, mtosatti@redhat.com,
qemu-devel@nongnu.org, Blue Swirl <blauwirbel@gmail.com>,
Jan Kiszka <jan.kiszka@web.de>,
avi@redhat.com, Anthony Liguori <anthony@codemonkey.ws>
Subject: Re: [PATCHv4 3/4] cpuid: disable pv eoi for 1.1 and older compat types
Date: Wed, 29 Aug 2012 16:43:39 +0200 [thread overview]
Message-ID: <87mx1dep2c.fsf@elfo.mitica> (raw)
In-Reply-To: <20120828213527.GB5817@redhat.com> (Michael S. Tsirkin's message of "Wed, 29 Aug 2012 00:35:28 +0300")
"Michael S. Tsirkin" <mst@redhat.com> wrote:
> On Tue, Aug 28, 2012 at 04:13:38PM -0300, Eduardo Habkost wrote:
>> On Tue, Aug 28, 2012 at 08:43:52PM +0300, Michael S. Tsirkin wrote:
>> > In preparation for adding PV EOI support, disable PV EOI by default for
>> > 1.1 and older machine types, to avoid CPUID changing during migration.
>> >
>> > PV EOI can still be enabled/disabled by specifying it explicitly.
>> > Enable for 1.1
>> > -M pc-1.1 -cpu kvm64,+kvm_pv_eoi
>> > Disable for 1.2
>> > -M pc-1.2 -cpu kvm64,-kvm_pv_eoi
>> >
>>
>> What about users that are already running "qemu-1.1 -M pc-1.1" on a host
>> kernel that supports PV EOI already? They would get PV EOI disabled when
>> migrating to a destination running "qemu-1.2 -M pc-1.1".
>>
>> (On the other hand, people running "qemu-1.1 -M pc-1.1" on a host kernel
>> supporting PV EOI already have migration broken, so there's not much we
>> can do for them)
>
> Exactly.
>
> Talked to Gleb, long term I think we should rework code to make
> it forward-compatible wrt adding new MSRs:
> - source gets list of MSRs to be migrated from KVM and simply sends
> them all
This is a bad idea, each time that we add a new MSR, we broke migration.
A better idea is just to _know_ what MSR's have been used by the guest,
and sent that ones.
> - send all MSRS in key/value format
Instead send all MSR's that have changed by its default value (for some
definition of default value).
> - destination gets list of MSRs to be migrated from KVM and
> only restores the supported ones
it should be the other way around. If source knows that an MSR is not
needed (it has never been read/writen/configured/... depends on the
MSR), then jsut dont' sent it.
> Too late for 1.2?
Yes.
ARM is trying to come with some fix for this (they have the CP15
registers, I think, that look a lot like MSR's. I think that only
solution is what I described here.
Current solution of explicitely list all of them is just a mass (TM).
Later, Juan.)
WARNING: multiple messages have this Message-ID (diff)
From: Juan Quintela <quintela@redhat.com>
To: "Michael S. Tsirkin" <mst@redhat.com>
Cc: Eduardo Habkost <ehabkost@redhat.com>,
gleb@redhat.com, mtosatti@redhat.com, qemu-devel@nongnu.org,
Blue Swirl <blauwirbel@gmail.com>, Jan Kiszka <jan.kiszka@web.de>,
avi@redhat.com, kvm@vger.kernel.org,
Anthony Liguori <anthony@codemonkey.ws>
Subject: Re: [Qemu-devel] [PATCHv4 3/4] cpuid: disable pv eoi for 1.1 and older compat types
Date: Wed, 29 Aug 2012 16:43:39 +0200 [thread overview]
Message-ID: <87mx1dep2c.fsf@elfo.mitica> (raw)
In-Reply-To: <20120828213527.GB5817@redhat.com> (Michael S. Tsirkin's message of "Wed, 29 Aug 2012 00:35:28 +0300")
"Michael S. Tsirkin" <mst@redhat.com> wrote:
> On Tue, Aug 28, 2012 at 04:13:38PM -0300, Eduardo Habkost wrote:
>> On Tue, Aug 28, 2012 at 08:43:52PM +0300, Michael S. Tsirkin wrote:
>> > In preparation for adding PV EOI support, disable PV EOI by default for
>> > 1.1 and older machine types, to avoid CPUID changing during migration.
>> >
>> > PV EOI can still be enabled/disabled by specifying it explicitly.
>> > Enable for 1.1
>> > -M pc-1.1 -cpu kvm64,+kvm_pv_eoi
>> > Disable for 1.2
>> > -M pc-1.2 -cpu kvm64,-kvm_pv_eoi
>> >
>>
>> What about users that are already running "qemu-1.1 -M pc-1.1" on a host
>> kernel that supports PV EOI already? They would get PV EOI disabled when
>> migrating to a destination running "qemu-1.2 -M pc-1.1".
>>
>> (On the other hand, people running "qemu-1.1 -M pc-1.1" on a host kernel
>> supporting PV EOI already have migration broken, so there's not much we
>> can do for them)
>
> Exactly.
>
> Talked to Gleb, long term I think we should rework code to make
> it forward-compatible wrt adding new MSRs:
> - source gets list of MSRs to be migrated from KVM and simply sends
> them all
This is a bad idea, each time that we add a new MSR, we broke migration.
A better idea is just to _know_ what MSR's have been used by the guest,
and sent that ones.
> - send all MSRS in key/value format
Instead send all MSR's that have changed by its default value (for some
definition of default value).
> - destination gets list of MSRs to be migrated from KVM and
> only restores the supported ones
it should be the other way around. If source knows that an MSR is not
needed (it has never been read/writen/configured/... depends on the
MSR), then jsut dont' sent it.
> Too late for 1.2?
Yes.
ARM is trying to come with some fix for this (they have the CP15
registers, I think, that look a lot like MSR's. I think that only
solution is what I described here.
Current solution of explicitely list all of them is just a mass (TM).
Later, Juan.)
next prev parent reply other threads:[~2012-08-29 14:44 UTC|newest]
Thread overview: 65+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-08-28 17:43 [PATCHv4 0/4] migrate PV EOI MSR Michael S. Tsirkin
2012-08-28 17:43 ` [Qemu-devel] " Michael S. Tsirkin
2012-08-28 17:43 ` [PATCHv4 1/4] linux-headers: update to 3.6-rc3 Michael S. Tsirkin
2012-08-28 17:43 ` [Qemu-devel] " Michael S. Tsirkin
2012-08-28 17:43 ` [PATCHv4 2/4] pc: refactor compat code Michael S. Tsirkin
2012-08-28 17:43 ` [Qemu-devel] " Michael S. Tsirkin
2012-08-29 14:49 ` Anthony Liguori
2012-08-29 14:49 ` [Qemu-devel] " Anthony Liguori
2012-08-28 17:43 ` [PATCHv4 3/4] cpuid: disable pv eoi for 1.1 and older compat types Michael S. Tsirkin
2012-08-28 17:43 ` [Qemu-devel] " Michael S. Tsirkin
2012-08-28 19:13 ` Eduardo Habkost
2012-08-28 19:13 ` Eduardo Habkost
2012-08-28 21:35 ` Michael S. Tsirkin
2012-08-28 21:35 ` Michael S. Tsirkin
2012-08-28 22:02 ` Eduardo Habkost
2012-08-28 22:02 ` Eduardo Habkost
2012-08-28 22:21 ` Michael S. Tsirkin
2012-08-28 22:21 ` Michael S. Tsirkin
2012-08-28 22:25 ` Michael S. Tsirkin
2012-08-28 22:25 ` [Qemu-devel] " Michael S. Tsirkin
2012-08-28 23:50 ` Eduardo Habkost
2012-08-28 23:50 ` Eduardo Habkost
2012-08-29 10:06 ` Michael S. Tsirkin
2012-08-29 10:06 ` Michael S. Tsirkin
2012-08-29 12:56 ` Eduardo Habkost
2012-08-29 12:56 ` Eduardo Habkost
2012-08-29 13:18 ` Michael S. Tsirkin
2012-08-29 13:18 ` [Qemu-devel] " Michael S. Tsirkin
2012-08-29 13:49 ` Eduardo Habkost
2012-08-29 13:49 ` Eduardo Habkost
2012-08-29 14:11 ` Michael S. Tsirkin
2012-08-29 14:11 ` Michael S. Tsirkin
2012-08-29 14:21 ` Eduardo Habkost
2012-08-29 14:21 ` Eduardo Habkost
2012-08-29 9:59 ` Marcelo Tosatti
2012-08-29 9:59 ` Marcelo Tosatti
2012-08-29 10:03 ` Marcelo Tosatti
2012-08-29 10:03 ` Marcelo Tosatti
2012-08-29 10:32 ` Michael S. Tsirkin
2012-08-29 10:32 ` Michael S. Tsirkin
2012-08-29 10:23 ` Michael S. Tsirkin
2012-08-29 10:23 ` Michael S. Tsirkin
2012-08-29 10:31 ` Michael S. Tsirkin
2012-08-29 10:31 ` Michael S. Tsirkin
2012-08-29 14:43 ` Juan Quintela [this message]
2012-08-29 14:43 ` Juan Quintela
2012-08-29 13:36 ` Anthony Liguori
2012-08-29 13:36 ` [Qemu-devel] " Anthony Liguori
2012-08-29 13:40 ` Gleb Natapov
2012-08-29 13:40 ` [Qemu-devel] " Gleb Natapov
2012-08-29 14:09 ` Anthony Liguori
2012-08-29 14:09 ` [Qemu-devel] " Anthony Liguori
2012-08-29 14:29 ` Michael S. Tsirkin
2012-08-29 14:29 ` [Qemu-devel] " Michael S. Tsirkin
2012-08-29 14:41 ` Eduardo Habkost
2012-08-29 15:04 ` [QEMU 1.2 PATCH] i386: kvm: have a predefined set of default KVM feature bits Eduardo Habkost
2012-08-29 15:04 ` [Qemu-devel] " Eduardo Habkost
2012-08-29 15:10 ` Michael S. Tsirkin
2012-08-29 15:10 ` [Qemu-devel] " Michael S. Tsirkin
2012-08-29 15:46 ` Marcelo Tosatti
2012-08-29 15:46 ` [Qemu-devel] " Marcelo Tosatti
2012-08-29 14:03 ` [Qemu-devel] [PATCHv4 3/4] cpuid: disable pv eoi for 1.1 and older compat types Eduardo Habkost
2012-08-29 14:03 ` Eduardo Habkost
2012-08-28 17:43 ` [PATCHv4 4/4] kvm: get/set PV EOI MSR Michael S. Tsirkin
2012-08-28 17:43 ` [Qemu-devel] " Michael S. Tsirkin
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=87mx1dep2c.fsf@elfo.mitica \
--to=quintela@redhat.com \
--cc=anthony@codemonkey.ws \
--cc=avi@redhat.com \
--cc=blauwirbel@gmail.com \
--cc=ehabkost@redhat.com \
--cc=gleb@redhat.com \
--cc=jan.kiszka@web.de \
--cc=kvm@vger.kernel.org \
--cc=mst@redhat.com \
--cc=mtosatti@redhat.com \
--cc=qemu-devel@nongnu.org \
/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.