From: Anthony Liguori <anthony@codemonkey.ws>
To: Gleb Natapov <gleb@redhat.com>
Cc: "Michael S. Tsirkin" <mst@redhat.com>,
avi@redhat.com, mtosatti@redhat.com, qemu-devel@nongnu.org,
kvm@vger.kernel.org, Jan Kiszka <jan.kiszka@web.de>,
Blue Swirl <blauwirbel@gmail.com>
Subject: Re: [PATCHv4 3/4] cpuid: disable pv eoi for 1.1 and older compat types
Date: Wed, 29 Aug 2012 09:09:16 -0500 [thread overview]
Message-ID: <873935yelv.fsf@codemonkey.ws> (raw)
In-Reply-To: <20120829134021.GB32728@redhat.com>
Gleb Natapov <gleb@redhat.com> writes:
> On Wed, Aug 29, 2012 at 08:36:30AM -0500, Anthony Liguori wrote:
>> "Michael S. Tsirkin" <mst@redhat.com> writes:
>>
>> > 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
>> >
>> > Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
>>
>> As best I can tell, we're papering over an ABI breakage in KVM.
>>
>> If an old QEMU attempts to do a live migration on a new kernel,
>> migrating to an QEMU on a different box with an older kernel, it will
>> fail because there is state that isn't being migrated.
>>
>> This ought to be fixed in the kernel by making these features
>> whitelisted by userspace.
>>
> What do you mean. Userspace and only userspace decides what cpuid bits
> will be seen by a guest. Currently userspace enables all PV cpuid bits
> it finds.
Right, I misunderstood from the commit message. I see now that the
problem is that bfee7546df51c08e395dc8a7676a5c7f20186fee unconditionally
enabled kvm_pv_eoi without taking into account migration support.
I think for 1.2 we should simply revert the above commit and then we can
restore it for 1.3 with proper support for migration.
Regards,
Anthony Liguori
>
> --
> Gleb.
WARNING: multiple messages have this Message-ID (diff)
From: Anthony Liguori <anthony@codemonkey.ws>
To: Gleb Natapov <gleb@redhat.com>
Cc: kvm@vger.kernel.org, "Michael S. Tsirkin" <mst@redhat.com>,
mtosatti@redhat.com, qemu-devel@nongnu.org,
Blue Swirl <blauwirbel@gmail.com>, Jan Kiszka <jan.kiszka@web.de>,
avi@redhat.com
Subject: Re: [Qemu-devel] [PATCHv4 3/4] cpuid: disable pv eoi for 1.1 and older compat types
Date: Wed, 29 Aug 2012 09:09:16 -0500 [thread overview]
Message-ID: <873935yelv.fsf@codemonkey.ws> (raw)
In-Reply-To: <20120829134021.GB32728@redhat.com>
Gleb Natapov <gleb@redhat.com> writes:
> On Wed, Aug 29, 2012 at 08:36:30AM -0500, Anthony Liguori wrote:
>> "Michael S. Tsirkin" <mst@redhat.com> writes:
>>
>> > 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
>> >
>> > Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
>>
>> As best I can tell, we're papering over an ABI breakage in KVM.
>>
>> If an old QEMU attempts to do a live migration on a new kernel,
>> migrating to an QEMU on a different box with an older kernel, it will
>> fail because there is state that isn't being migrated.
>>
>> This ought to be fixed in the kernel by making these features
>> whitelisted by userspace.
>>
> What do you mean. Userspace and only userspace decides what cpuid bits
> will be seen by a guest. Currently userspace enables all PV cpuid bits
> it finds.
Right, I misunderstood from the commit message. I see now that the
problem is that bfee7546df51c08e395dc8a7676a5c7f20186fee unconditionally
enabled kvm_pv_eoi without taking into account migration support.
I think for 1.2 we should simply revert the above commit and then we can
restore it for 1.3 with proper support for migration.
Regards,
Anthony Liguori
>
> --
> Gleb.
next prev parent reply other threads:[~2012-08-29 14:09 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
2012-08-29 14:43 ` [Qemu-devel] " 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 [this message]
2012-08-29 14:09 ` 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=873935yelv.fsf@codemonkey.ws \
--to=anthony@codemonkey.ws \
--cc=avi@redhat.com \
--cc=blauwirbel@gmail.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.