[Qemu-devel] [PULL 00/13] Migration PULL request

Juan Quintela posted 13 patches 6 years, 2 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20180129120932.12874-1-quintela@redhat.com
Test checkpatch passed
Test docker-build@min-glib passed
Test docker-mingw@fedora passed
Test docker-quick@centos6 passed
Test ppc passed
Test s390x passed
There is a newer version of this series
migration/channel.c    |  34 +++----
migration/channel.h    |   3 +-
migration/exec.c       |   2 +-
migration/fd.c         |   2 +-
migration/migration.c  |  12 ++-
migration/migration.h  |   2 +-
migration/ram.c        |  11 +--
migration/rdma.c       |   2 +-
migration/savevm.c     |   2 +-
migration/socket.c     |   4 +-
migration/tls.c        |   3 +-
migration/trace-events |   2 +-
tests/migration-test.c | 252 ++++++++++++++++++++++++++++++++++++++-----------
13 files changed, 236 insertions(+), 95 deletions(-)
[Qemu-devel] [PULL 00/13] Migration PULL request
Posted by Juan Quintela 6 years, 2 months ago
Hi

- migrate_fd_connect cleanup (dave)
- use MAX_VM_PACKAGED_SIZE
  have to change (1<<32) for UINT32_MAX to get no warnings on win32
- Use right s->threashord_size(wei)
- patches reviewed from info/migrate, migration tests and multifd (me)

Later, Juan.

The following changes since commit 6233b4a8c2a32ef6955a921246fa08705bbb3676:

  Merge remote-tracking branch 'remotes/ericb/tags/pull-nbd-2018-01-26' into staging (2018-01-26 17:29:14 +0000)

are available in the Git repository at:

  git://github.com/juanquintela/qemu.git tags/migration/20180129

for you to fetch changes up to 4b6bb0a77761b8a906a540e927c7a9dde99bc10f:

  tests: Adjust sleeps for migration test (2018-01-29 12:10:22 +0100)

----------------------------------------------------------------
migration/next for 20180129

----------------------------------------------------------------
Daniel Henrique Barboza (1):
      migration/savevm.c: set MAX_VM_CMD_PACKAGED_SIZE to 1ul << 32

Dr. David Alan Gilbert (2):
      migration: Allow migrate_fd_connect to take an Error *
      migration: Route errors down through migration_channel_connect

Juan Quintela (9):
      migration: Drop current address parameter from save_zero_page()
      tests: Remove deprecated migration tests commands
      tests: Consolidate accelerators declaration
      tests: Use consistent names for migration
      tests: Add deprecated commands migration test
      tests: Add migration precopy test
      tests: Add migration xbzrle test
      tests: Create migrate-start-postcopy command
      tests: Adjust sleeps for migration test

Wei Wang (1):
      migration: use s->threshold_size inside migration_update_counters

 migration/channel.c    |  34 +++----
 migration/channel.h    |   3 +-
 migration/exec.c       |   2 +-
 migration/fd.c         |   2 +-
 migration/migration.c  |  12 ++-
 migration/migration.h  |   2 +-
 migration/ram.c        |  11 +--
 migration/rdma.c       |   2 +-
 migration/savevm.c     |   2 +-
 migration/socket.c     |   4 +-
 migration/tls.c        |   3 +-
 migration/trace-events |   2 +-
 tests/migration-test.c | 252 ++++++++++++++++++++++++++++++++++++++-----------
 13 files changed, 236 insertions(+), 95 deletions(-)

Re: [Qemu-devel] [PULL 00/13] Migration PULL request
Posted by Peter Maydell 6 years, 2 months ago
On 29 January 2018 at 12:09, Juan Quintela <quintela@redhat.com> wrote:
> Hi
>
> - migrate_fd_connect cleanup (dave)
> - use MAX_VM_PACKAGED_SIZE
>   have to change (1<<32) for UINT32_MAX to get no warnings on win32
> - Use right s->threashord_size(wei)
> - patches reviewed from info/migrate, migration tests and multifd (me)
>
> Later, Juan.
>
> The following changes since commit 6233b4a8c2a32ef6955a921246fa08705bbb3676:
>
>   Merge remote-tracking branch 'remotes/ericb/tags/pull-nbd-2018-01-26' into staging (2018-01-26 17:29:14 +0000)
>
> are available in the Git repository at:
>
>   git://github.com/juanquintela/qemu.git tags/migration/20180129
>
> for you to fetch changes up to 4b6bb0a77761b8a906a540e927c7a9dde99bc10f:
>
>   tests: Adjust sleeps for migration test (2018-01-29 12:10:22 +0100)
>
> ----------------------------------------------------------------
> migration/next for 20180129

Hi. On aarch32 host I get this assert in the tests:

TEST: tests/migration-test... (pid=605)
  /ppc64/migration/deprecated:                                         OK
  /ppc64/migration/precopy/unix:                                       OK
  /ppc64/migration/postcopy/unix:                                      OK
  /ppc64/migration/xbzrle/unix:
Unexpected 32 on dest_serial serial
**
ERROR:/home/peter.maydell/qemu/tests/migration-test.c:218:wait_for_serial:
code should not be reached
FAIL
GTester: last random seed: R02S31c8250adcdb12a122a1c5c0ab62d01e
(pid=639)
FAIL: tests/migration-test

thanks
-- PMM

Re: [Qemu-devel] [PULL 00/13] Migration PULL request
Posted by Juan Quintela 6 years, 2 months ago
Peter Maydell <peter.maydell@linaro.org> wrote:
> On 29 January 2018 at 12:09, Juan Quintela <quintela@redhat.com> wrote:
>> Hi
>>
>> - migrate_fd_connect cleanup (dave)
>> - use MAX_VM_PACKAGED_SIZE
>>   have to change (1<<32) for UINT32_MAX to get no warnings on win32
>> - Use right s->threashord_size(wei)
>> - patches reviewed from info/migrate, migration tests and multifd (me)
>>
>> Later, Juan.
>>
>> The following changes since commit 6233b4a8c2a32ef6955a921246fa08705bbb3676:
>>
>>   Merge remote-tracking branch
>> 'remotes/ericb/tags/pull-nbd-2018-01-26' into staging (2018-01-26
>> 17:29:14 +0000)
>>
>> are available in the Git repository at:
>>
>>   git://github.com/juanquintela/qemu.git tags/migration/20180129
>>
>> for you to fetch changes up to 4b6bb0a77761b8a906a540e927c7a9dde99bc10f:
>>
>>   tests: Adjust sleeps for migration test (2018-01-29 12:10:22 +0100)
>>
>> ----------------------------------------------------------------
>> migration/next for 20180129
>
> Hi. On aarch32 host I get this assert in the tests:
>
> TEST: tests/migration-test... (pid=605)
>   /ppc64/migration/deprecated:                                         OK
>   /ppc64/migration/precopy/unix:                                       OK
>   /ppc64/migration/postcopy/unix:                                      OK
>   /ppc64/migration/xbzrle/unix:
> Unexpected 32 on dest_serial serial
> **
> ERROR:/home/peter.maydell/qemu/tests/migration-test.c:218:wait_for_serial:
> code should not be reached

1st time I see a problem on the xbzrle test.  I can resent the pull
without that patch, but that is a *test*, the problem is that we have a
xbzrle problem on aarch32 that we didn't know about yet.

So I will just try to do the PULL request anyways.  I will try to get
access to an arm32 system tomorrow and see what is going on.

Thanks for checking it.

Later, Juan.


> FAIL
> GTester: last random seed: R02S31c8250adcdb12a122a1c5c0ab62d01e
> (pid=639)
> FAIL: tests/migration-test
>
> thanks
> -- PMM

Re: [Qemu-devel] [PULL 00/13] Migration PULL request
Posted by Laurent Vivier 6 years, 2 months ago
On 30/01/2018 07:29, Juan Quintela wrote:
> Peter Maydell <peter.maydell@linaro.org> wrote:
>> On 29 January 2018 at 12:09, Juan Quintela <quintela@redhat.com> wrote:
>>> Hi
>>>
>>> - migrate_fd_connect cleanup (dave)
>>> - use MAX_VM_PACKAGED_SIZE
>>>   have to change (1<<32) for UINT32_MAX to get no warnings on win32
>>> - Use right s->threashord_size(wei)
>>> - patches reviewed from info/migrate, migration tests and multifd (me)
>>>
>>> Later, Juan.
>>>
>>> The following changes since commit 6233b4a8c2a32ef6955a921246fa08705bbb3676:
>>>
>>>   Merge remote-tracking branch
>>> 'remotes/ericb/tags/pull-nbd-2018-01-26' into staging (2018-01-26
>>> 17:29:14 +0000)
>>>
>>> are available in the Git repository at:
>>>
>>>   git://github.com/juanquintela/qemu.git tags/migration/20180129
>>>
>>> for you to fetch changes up to 4b6bb0a77761b8a906a540e927c7a9dde99bc10f:
>>>
>>>   tests: Adjust sleeps for migration test (2018-01-29 12:10:22 +0100)
>>>
>>> ----------------------------------------------------------------
>>> migration/next for 20180129
>>
>> Hi. On aarch32 host I get this assert in the tests:
>>
>> TEST: tests/migration-test... (pid=605)
>>   /ppc64/migration/deprecated:                                         OK
>>   /ppc64/migration/precopy/unix:                                       OK
>>   /ppc64/migration/postcopy/unix:                                      OK
>>   /ppc64/migration/xbzrle/unix:
>> Unexpected 32 on dest_serial serial
>> **
>> ERROR:/home/peter.maydell/qemu/tests/migration-test.c:218:wait_for_serial:
>> code should not be reached
> 
> 1st time I see a problem on the xbzrle test.  I can resent the pull
> without that patch, but that is a *test*, the problem is that we have a
> xbzrle problem on aarch32 that we didn't know about yet.
> 
> So I will just try to do the PULL request anyways.  I will try to get
> access to an arm32 system tomorrow and see what is going on.
> 
> Thanks for checking it.

I have tested this on ppc32 (G4@900MHz) and I found it never converges.

If I increase the downtime limit, it works:

--- a/tests/migration-test.c
+++ b/tests/migration-test.c
@@ -674,7 +674,7 @@ static void test_xbzrle(const char *uri)
     wait_for_migration_pass(from);

     /* 300ms should converge */
-    migrate_set_parameter(from, "downtime-limit", "300");
+    migrate_set_parameter(from, "downtime-limit", "2000");

The test is also disabled if USERFAULTFD is disabled in the kernel,
whereas it doesn't need it. You should update the "if
(!ufd_version_check())" part.

Thanks,
Laurent