All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
To: Juan Quintela <quintela@redhat.com>
Cc: qemu-devel@nongnu.org, lvivier@redhat.com, peterx@redhat.com
Subject: Re: [Qemu-devel] [PATCH v4 10/11] tests: Adjust sleeps for migration test
Date: Thu, 11 Jan 2018 10:56:21 +0000	[thread overview]
Message-ID: <20180111105621.GB2669@work-vm> (raw)
In-Reply-To: <20180105215246.908-11-quintela@redhat.com>

* Juan Quintela (quintela@redhat.com) wrote:
> Also reorder code to not sleep when event already happened.
> 
> Signed-off-by: Juan Quintela <quintela@redhat.com>
> ---
>  tests/migration-test.c | 29 ++++++++++++++---------------
>  1 file changed, 14 insertions(+), 15 deletions(-)
> 
> diff --git a/tests/migration-test.c b/tests/migration-test.c
> index 70b3c0870b..8914829006 100644
> --- a/tests/migration-test.c
> +++ b/tests/migration-test.c
> @@ -280,10 +280,9 @@ static void read_blocktime(QTestState *who)
>  
>  static void wait_for_migration_complete(QTestState *who)
>  {
> -    QDict *rsp, *rsp_return;
> -    bool completed;
> -
> -    do {
> +    while (true) {
> +        QDict *rsp, *rsp_return;
> +        bool completed;
>          const char *status;
>  
>          rsp = wait_command(who, "{ 'execute': 'query-migrate' }");
> @@ -292,8 +291,11 @@ static void wait_for_migration_complete(QTestState *who)
>          completed = strcmp(status, "completed") == 0;
>          g_assert_cmpstr(status, !=,  "failed");
>          QDECREF(rsp);
> -        usleep(1000 * 100);
> -    } while (!completed);
> +        if (completed) {
> +            return;
> +        }
> +        usleep(1000);
> +    }

OK, so that's mostly about avoiding a sleep in the exit from the normal
path.

>  }
>  
>  static void wait_for_migration_pass(QTestState *who)
> @@ -302,16 +304,13 @@ static void wait_for_migration_pass(QTestState *who)
>      uint64_t pass;
>  
>      /* Wait for the 1st sync */
> -    do {
> +    while (!got_stop && !initial_pass) {
> +        usleep(1000);
>          initial_pass = get_migration_pass(who);
> -        if (got_stop || initial_pass) {
> -            break;
> -        }
> -        usleep(1000 * 100);
> -    } while (true);
> +    }
>  
>      do {
> -        usleep(1000 * 100);
> +        usleep(1000);
>          pass = get_migration_pass(who);
>      } while (pass == initial_pass && !got_stop);
>  }

OK

> @@ -510,13 +509,13 @@ static void test_migrate_end(QTestState *from, QTestState *to)
>      /* Destination still running, wait for a byte to change */
>      do {
>          qtest_memread(to, start_address, &dest_byte_b, 1);
> -        usleep(10 * 1000);
> +        usleep(1000 * 10);

Profound :-)

>      } while (dest_byte_a == dest_byte_b);
>  
>      qtest_qmp_discard_response(to, "{ 'execute' : 'stop'}");
>      /* With it stopped, check nothing changes */
>      qtest_memread(to, start_address, &dest_byte_c, 1);
> -    sleep(1);
> +    usleep(1000 * 200);

OK

>      qtest_memread(to, start_address, &dest_byte_d, 1);
>      g_assert_cmpint(dest_byte_c, ==, dest_byte_d);



Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>

> -- 
> 2.14.3
> 
--
Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK

  reply	other threads:[~2018-01-11 10:56 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-01-05 21:52 [Qemu-devel] [PATCH v4 00/11] Add make check tests for Migration Juan Quintela
2018-01-05 21:52 ` [Qemu-devel] [PATCH v4 01/11] tests: Remove deprecated migration tests commands Juan Quintela
2018-01-11 12:48   ` Dr. David Alan Gilbert
2018-01-05 21:52 ` [Qemu-devel] [PATCH v4 02/11] tests: Migration ppc test was missing arguments Juan Quintela
2018-01-10  6:25   ` Peter Xu
2018-01-10  8:47     ` Juan Quintela
2018-01-10  9:21       ` Laurent Vivier
2018-01-10 10:12         ` Laurent Vivier
2018-01-10 10:43           ` Juan Quintela
2018-01-10 11:03             ` Laurent Vivier
2018-01-05 21:52 ` [Qemu-devel] [PATCH v4 03/11] tests: Consolidate accelerators declaration Juan Quintela
2018-01-11 19:00   ` Dr. David Alan Gilbert
2018-01-05 21:52 ` [Qemu-devel] [PATCH v4 04/11] tests: Use consistent names and sizes for migration Juan Quintela
2018-01-10  6:30   ` Peter Xu
2018-01-10  8:43     ` Juan Quintela
2018-01-10  8:54       ` Peter Xu
2018-01-10 11:49         ` Dr. David Alan Gilbert
2018-01-10 14:58           ` Juan Quintela
2018-01-10 11:49   ` Dr. David Alan Gilbert
2018-01-05 21:52 ` [Qemu-devel] [PATCH v4 05/11] tests: Add deprecated commands migration test Juan Quintela
2018-01-10  6:37   ` Peter Xu
2018-01-10  8:46     ` Juan Quintela
2018-01-10  8:58       ` Peter Xu
2018-01-05 21:52 ` [Qemu-devel] [PATCH v4 06/11] tests: Add migration precopy test Juan Quintela
2018-01-05 21:52 ` [Qemu-devel] [PATCH v4 07/11] tests: Add basic migration precopy tcp test Juan Quintela
2018-01-05 21:52 ` [Qemu-devel] [PATCH v4 08/11] tests: Add migration xbzrle test Juan Quintela
2018-01-05 21:52 ` [Qemu-devel] [PATCH v4 09/11] tests: Create migrate-start-postcopy command Juan Quintela
2018-01-11 10:31   ` Dr. David Alan Gilbert
2018-01-05 21:52 ` [Qemu-devel] [PATCH v4 10/11] tests: Adjust sleeps for migration test Juan Quintela
2018-01-11 10:56   ` Dr. David Alan Gilbert [this message]
2018-01-05 21:52 ` [Qemu-devel] [PATCH v4 11/11] [RFH] tests: Add migration compress threads tests Juan Quintela
2018-01-10  6:42 ` [Qemu-devel] [PATCH v4 00/11] Add make check tests for Migration Peter Xu
2018-01-10  9:12   ` 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=20180111105621.GB2669@work-vm \
    --to=dgilbert@redhat.com \
    --cc=lvivier@redhat.com \
    --cc=peterx@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 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.