From: Peter Xu <peterx@redhat.com>
To: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
Cc: qemu-devel@nongnu.org, Juan Quintela <quintela@redhat.com>
Subject: Re: [Qemu-devel] [PATCH for-3.0 0/9] migration: postcopy recovery unit test, bug fixes
Date: Tue, 10 Jul 2018 11:27:25 +0800 [thread overview]
Message-ID: <20180710032725.GL23001@xz-mi> (raw)
In-Reply-To: <20180706105658.GB2661@work-vm>
On Fri, Jul 06, 2018 at 11:56:59AM +0100, Dr. David Alan Gilbert wrote:
> * Dr. David Alan Gilbert (dgilbert@redhat.com) wrote:
> > * Peter Xu (peterx@redhat.com) wrote:
> > > Based-on: <20180627132246.5576-1-peterx@redhat.com>
> > >
> > > Based on the series to unbreak postcopy:
> > > Subject: [PATCH v3 0/4] migation: unbreak postcopy recovery
> > > Message-Id: <20180627132246.5576-1-peterx@redhat.com>
> > >
> > > This series introduce a new postcopy recovery test. The new test
> > > actually helped me to identify two bugs there so fix them as well
> > > before 3.0 release.
> > >
> > > Patch 1: a trivial cleanup for existing postcopy ram load, which I
> > > found a bit confusing during debugging the problem.
> > >
> > > Patch 2-3: two bug fixes that address different issues. Please see
> > > the commit log for more information.
> > >
> > > Patch 4-9: add the postcopy recovery unit test.
> > >
> > > Please review. Thanks,
> >
> > Queued
>
> Hi Peter,
> There's a problem in there somewhere; I'm getting
> an intermittent failure of the test if I run a make check -j 8 on my
> laptop. Just running two copies of tests/migration-test in parallel
> sometimes triggers it (but not if I turn on QTEST_LOG!).
> But it's always failing with:
>
> ERROR:/home/dgilbert/git/migpull/tests/migration-test.c:373:migrate_recover: assertion failed: (qdict_haskey(rsp, "return"))
Hmm, so this should be a race. I suspect it's because destination VM
hasn't reached the correct state when sending the recovery command.
Could you help to try these two tiny patches to see whether it can fix
the problem?
================
commit d875ea1a98932174e3fa202859b65df26def174d
Author: Peter Xu <peterx@redhat.com>
Date: Tue Jul 10 11:17:24 2018 +0800
migration: show pause/recover state on dst host
These two states will be missing when doing "query-migrate" on
destination VM. Add these states so that we can get the query results
as expected.
Signed-off-by: Peter Xu <peterx@redhat.com>
diff --git a/migration/migration.c b/migration/migration.c
index 0404c53215..8d56d56930 100644
--- a/migration/migration.c
+++ b/migration/migration.c
@@ -911,6 +911,8 @@ static void fill_destination_migration_info(MigrationInfo *info)
case MIGRATION_STATUS_CANCELLED:
case MIGRATION_STATUS_ACTIVE:
case MIGRATION_STATUS_POSTCOPY_ACTIVE:
+ case MIGRATION_STATUS_POSTCOPY_PAUSED:
+ case MIGRATION_STATUS_POSTCOPY_RECOVER:
case MIGRATION_STATUS_FAILED:
case MIGRATION_STATUS_COLO:
info->has_status = true;
================
commit 9fa7fc773961cd0ea0b5f70a166def0d8aebf464
Author: Peter Xu <peterx@redhat.com>
Date: Tue Jul 10 11:18:48 2018 +0800
tests: don't send recovery cmd until dst pauses
Signed-off-by: Peter Xu <peterx@redhat.com>
diff --git a/tests/migration-test.c b/tests/migration-test.c
index 96e69dab99..45558446f1 100644
--- a/tests/migration-test.c
+++ b/tests/migration-test.c
@@ -646,6 +646,13 @@ static void test_postcopy_recovery(void)
*/
migrate_pause(from);
+ /*
+ * Wait for destination side to reach postcopy-paused state. The
+ * migrate-recover command can only succeed if destination machine
+ * is in the paused state
+ */
+ wait_for_migration_status(to, "postcopy-paused");
+
/*
* Create a new socket to emulate a new channel that is different
* from the broken migration channel; tell the destination to
================
Thanks!
--
Peter Xu
next prev parent reply other threads:[~2018-07-10 3:27 UTC|newest]
Thread overview: 46+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-07-05 3:17 [Qemu-devel] [PATCH for-3.0 0/9] migration: postcopy recovery unit test, bug fixes Peter Xu
2018-07-05 3:17 ` [Qemu-devel] [PATCH for-3.0 1/9] migration: simplify check to use qemu file buffer Peter Xu
2018-07-05 9:01 ` Dr. David Alan Gilbert
2018-07-05 9:11 ` Peter Xu
2018-07-05 12:59 ` Juan Quintela
2018-07-05 3:17 ` [Qemu-devel] [PATCH for-3.0 2/9] migration: loosen recovery check when load vm Peter Xu
2018-07-05 9:15 ` Dr. David Alan Gilbert
2018-07-05 9:31 ` Peter Xu
2018-07-05 13:01 ` Juan Quintela
2018-07-05 3:17 ` [Qemu-devel] [PATCH for-3.0 3/9] migration: fix incorrect bitmap size calculation Peter Xu
2018-07-05 9:38 ` Dr. David Alan Gilbert
2018-07-05 13:01 ` Juan Quintela
2018-07-05 3:17 ` [Qemu-devel] [PATCH for-3.0 4/9] tests: introduce migrate_postcopy_* helpers Peter Xu
2018-07-05 9:31 ` Balamuruhan S
2018-07-06 2:19 ` Peter Xu
2018-07-06 6:17 ` Balamuruhan S
2018-07-05 9:59 ` Dr. David Alan Gilbert
2018-07-05 13:03 ` Juan Quintela
2018-07-05 3:17 ` [Qemu-devel] [PATCH for-3.0 5/9] tests: allow migrate() to take extra flags Peter Xu
2018-07-05 10:18 ` Dr. David Alan Gilbert
2018-07-05 13:05 ` Juan Quintela
2018-07-06 10:36 ` Balamuruhan S
2018-07-05 3:17 ` [Qemu-devel] [PATCH for-3.0 6/9] tests: introduce migrate_query*() helpers Peter Xu
2018-07-05 10:23 ` Dr. David Alan Gilbert
2018-07-05 13:07 ` Juan Quintela
2018-07-05 10:59 ` Balamuruhan S
2018-07-05 13:06 ` Juan Quintela
2018-07-05 3:17 ` [Qemu-devel] [PATCH for-3.0 7/9] tests: introduce wait_for_migration_status() Peter Xu
2018-07-05 10:27 ` Dr. David Alan Gilbert
2018-07-05 13:07 ` Juan Quintela
2018-07-06 10:41 ` Balamuruhan S
2018-07-05 3:17 ` [Qemu-devel] [PATCH for-3.0 8/9] tests: add postcopy recovery test Peter Xu
2018-07-05 10:30 ` Dr. David Alan Gilbert
2018-07-05 13:08 ` Juan Quintela
2018-07-05 3:17 ` [Qemu-devel] [PATCH for-3.0 9/9] tests: hide stderr for " Peter Xu
2018-07-05 10:36 ` Dr. David Alan Gilbert
2018-07-05 13:09 ` Juan Quintela
2018-07-06 9:17 ` [Qemu-devel] [PATCH for-3.0 0/9] migration: postcopy recovery unit test, bug fixes Dr. David Alan Gilbert
2018-07-06 10:56 ` Dr. David Alan Gilbert
2018-07-06 11:45 ` Balamuruhan S
2018-07-06 12:46 ` Balamuruhan S
2018-07-12 8:50 ` Dr. David Alan Gilbert
2018-07-10 3:27 ` Peter Xu [this message]
2018-07-10 8:53 ` Dr. David Alan Gilbert
2018-07-10 1:56 ` Balamuruhan S
2018-07-10 3:07 ` Peter Xu
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=20180710032725.GL23001@xz-mi \
--to=peterx@redhat.com \
--cc=dgilbert@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=quintela@redhat.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).