[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v6 04/10] migration: let MigrationState be a qde
From: |
Max Reitz |
Subject: |
Re: [Qemu-devel] [PATCH v6 04/10] migration: let MigrationState be a qdev |
Date: |
Fri, 30 Jun 2017 14:33:50 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.2.0 |
On 2017-06-30 09:11, Peter Xu wrote:
> On Fri, Jun 30, 2017 at 11:03:21AM +0800, Peter Xu wrote:
>> On Fri, Jun 30, 2017 at 04:18:56AM +0200, Max Reitz wrote:
>>> On 2017-06-27 06:10, Peter Xu wrote:
>>>> Let the old man "MigrationState" join the object family. Direct benefit
>>>> is that we can start to use all the property features derived from
>>>> current QDev, like: HW_COMPAT_* bits, command line setup for migration
>>>> parameters (so will never need to set them up each time using HMP/QMP,
>>>> this is really, really attractive for test writters), etc.
>>>>
>>>> I see no reason to disallow this happen yet. So let's start from this
>>>> one, to see whether it would be anything good.
>>>>
>>>> Now we init the MigrationState struct statically in main() to make sure
>>>> it's initialized after global properties are applied, since we'll use
>>>> them during creation of the object.
>>>>
>>>> No functional change at all.
>>>
>>> Evidently not quite right because this breaks iotest 055.
>>>
>>> Condensed test case:
>>>
>>> $ ./qemu-img create -f vmdk -o subformat=streamOptimized foo.vmdk 64M
>>> Formatting 'foo.vmdk', fmt=vmdk size=67108864 compat6=off
>>> hwversion=undefined subformat=streamOptimized
>>> $ x86_64-softmmu/qemu-system-x86_64 -drive if=none,file=foo.vmdk
>>> qemu-system-x86_64: ./migration/migration.c:114: migrate_get_current:
>>> Assertion `current_migration' failed.
>>> [1] 15453 abort (core dumped) x86_64-softmmu/qemu-system-x86_64
>>> -drive if=none,file=foo.vmdk
>>>
>>> (It just worked before this patch.)
>>
>> Sorry. Will have a look.
>
> Hello, Max,
>
> The assertion is caused by migrate_add_blocker() called before
> initialization of migration object. I'll fix it.
Thanks!
> But even with a fix (so I can pass 055 now), I still cannot pass some
> of the other tests. Errors I got:
>
> https://pastebin.com/ACqbXAYd
>
> I am not familiar with iotests. Is above usual? Looks like it still
> includes 3 failures, and some output mismatch.
Well, not usual. But 068 just is broken on master currently (Stefan has
sent "virtio: use ioeventfd in TCG and qtest mode" to fix it, and it's
part of his latest pull request). The failure in test 087 is because you
don't have aio=native enabled in your build, as the message says. :-)
I'm not sure about 118. Maybe the os.chmod() doesn't work as intended on
your machine...? Because it tries to open a read-only image as
read/write and wants to see it fail (which it doesn't in your case).
Max
signature.asc
Description: OpenPGP digital signature
- Re: [Qemu-devel] [PATCH v6 02/10] accel: introduce AccelClass.global_props, (continued)
[Qemu-devel] [PATCH v6 05/10] migration: move global_state.optional out, Peter Xu, 2017/06/27
[Qemu-devel] [PATCH v6 06/10] migration: move only_migratable to MigrationState, Peter Xu, 2017/06/27
Re: [Qemu-devel] [PATCH v6 06/10] migration: move only_migratable to MigrationState, Eduardo Habkost, 2017/06/28