All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Marcin Gibuła" <m.gibula@beyond.pl>
To: Marcelo Tosatti <mtosatti@redhat.com>, Andrey Korolyov <andrey@xdel.ru>
Cc: Amit Shah <amit.shah@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>, Fam Zheng <famz@redhat.com>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>
Subject: Re: [Qemu-devel] latest rc: virtio-blk hangs forever after migration
Date: Wed, 16 Jul 2014 09:35:16 +0200	[thread overview]
Message-ID: <53C62B34.60505@beyond.pl> (raw)
In-Reply-To: <20140715210948.GA20036@amt.cnet>

> Andrey,
>
> Can you please provide instructions on how to create reproducible
> environment?
>
> The following patch is equivalent to the original patch, for
> the purposes of fixing the kvmclock problem.
>
> Perhaps it becomes easier to spot the reason for the hang you are
> experiencing.

Marcelo,

the original reason for patch adding cpu_synchronize_all_states() there 
was because this bug affected non-migration operations as well - 
http://lists.gnu.org/archive/html/qemu-devel/2014-06/msg00472.html.

Won't moving it only to migration code break these things again?

>
> diff --git a/hw/i386/kvm/clock.c b/hw/i386/kvm/clock.c
> index 272a88a..feb5fc5 100644
> --- a/hw/i386/kvm/clock.c
> +++ b/hw/i386/kvm/clock.c
> @@ -17,7 +17,6 @@
>   #include "qemu/host-utils.h"
>   #include "sysemu/sysemu.h"
>   #include "sysemu/kvm.h"
> -#include "sysemu/cpus.h"
>   #include "hw/sysbus.h"
>   #include "hw/kvm/clock.h"
>
> @@ -66,7 +65,6 @@ static uint64_t kvmclock_current_nsec(KVMClockState *s)
>
>       cpu_physical_memory_read(kvmclock_struct_pa, &time, sizeof(time));
>
> -    assert(time.tsc_timestamp <= migration_tsc);
>       delta = migration_tsc - time.tsc_timestamp;
>       if (time.tsc_shift < 0) {
>           delta >>= -time.tsc_shift;
> @@ -125,8 +123,6 @@ static void kvmclock_vm_state_change(void *opaque, int running,
>           if (s->clock_valid) {
>               return;
>           }
> -
> -        cpu_synchronize_all_states();
>           ret = kvm_vm_ioctl(kvm_state, KVM_GET_CLOCK, &data);
>           if (ret < 0) {
>               fprintf(stderr, "KVM_GET_CLOCK failed: %s\n", strerror(ret));
> diff --git a/migration.c b/migration.c
> index 8d675b3..34f2325 100644
> --- a/migration.c
> +++ b/migration.c
> @@ -608,6 +608,7 @@ static void *migration_thread(void *opaque)
>                   qemu_system_wakeup_request(QEMU_WAKEUP_REASON_OTHER);
>                   old_vm_running = runstate_is_running();
>
> +                cpu_synchronize_all_states();
>                   ret = vm_stop_force_state(RUN_STATE_FINISH_MIGRATE);
>                   if (ret >= 0) {
>                       qemu_file_set_rate_limit(s->file, INT64_MAX);
>


-- 
mg

  parent reply	other threads:[~2014-07-16  7:35 UTC|newest]

Thread overview: 76+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-07-13 12:28 [Qemu-devel] latest rc: virtio-blk hangs forever after migration Andrey Korolyov
2014-07-13 15:29 ` Andrey Korolyov
2014-07-15 15:57   ` Paolo Bonzini
2014-07-15 17:32     ` Andrey Korolyov
2014-07-15 17:39       ` Andrey Korolyov
2014-07-15  5:03 ` Amit Shah
2014-07-15  6:52   ` Andrey Korolyov
2014-07-15 14:01     ` Andrey Korolyov
2014-07-15 21:09       ` Marcelo Tosatti
2014-07-15 21:25         ` Andrey Korolyov
2014-07-15 22:01           ` Paolo Bonzini
2014-07-15 23:40             ` Andrey Korolyov
2014-07-15 23:47               ` Marcelo Tosatti
2014-07-16  1:16               ` Marcelo Tosatti
2014-07-16  8:38                 ` Andrey Korolyov
2014-07-16 11:52                   ` Marcelo Tosatti
2014-07-16 13:24                     ` Andrey Korolyov
2014-07-16 18:25                       ` Andrey Korolyov
2014-07-16 21:28                         ` Marcin Gibuła
2014-07-16 21:36                           ` Andrey Korolyov
2014-07-17  9:49                             ` Marcin Gibuła
2014-07-17 11:20                               ` Marcin Gibuła
2014-07-17 11:54                               ` Marcin Gibuła
2014-07-17 12:06                                 ` Andrey Korolyov
2014-07-17 13:25                                   ` Marcin Gibuła
2014-07-17 19:18                                     ` Dr. David Alan Gilbert
2014-07-17 20:33                                       ` Marcin Gibuła
2014-07-17 20:50                                     ` Andrey Korolyov
2014-07-18  8:21                                       ` Marcin Gibuła
2014-07-18  8:36                                         ` Andrey Korolyov
2014-07-18  8:44                                           ` Marcin Gibuła
2014-07-18  8:51                                             ` Paolo Bonzini
2014-07-18  8:48                                     ` Paolo Bonzini
2014-07-18  8:57                                       ` Amit Shah
2014-07-18  9:32                                       ` Marcin Gibuła
2014-07-18  9:37                                         ` Paolo Bonzini
2014-07-18  9:48                                           ` Marcin Gibuła
2014-07-29 16:58                                       ` Paolo Bonzini
2014-07-30 12:02                                         ` Marcin Gibuła
2014-07-30 13:38                                           ` Paolo Bonzini
2014-07-30 22:12                                             ` Marcin Gibuła
2014-07-31 11:27                                               ` Marcin Gibuła
2014-08-04 16:30                                                 ` Marcin Gibuła
2014-08-04 18:30                                                   ` Paolo Bonzini
2014-08-08 21:37                                                     ` Marcelo Tosatti
2014-08-09  6:35                                                       ` Paolo Bonzini
2014-08-21 15:48                                                         ` Andrey Korolyov
2014-08-21 16:41                                                           ` Andrey Korolyov
2014-08-21 16:44                                                             ` Paolo Bonzini
2014-08-21 17:51                                                               ` Andrey Korolyov
2014-08-22 16:44                                                                 ` Andrey Korolyov
2014-08-22 17:45                                                                   ` Marcelo Tosatti
2014-08-22 18:39                                                                     ` Andrey Korolyov
2014-08-22 19:05                                                                       ` Marcelo Tosatti
2014-08-22 19:05                                                                         ` Marcelo Tosatti
2014-08-22 19:51                                                                           ` Andrey Korolyov
2014-08-22 21:01                                                                           ` Marcelo Tosatti
2014-08-22 22:21                                                                             ` Andrey Korolyov
2014-08-24 16:19                                                                             ` Andrey Korolyov
2014-08-24 16:35                                                                               ` Paolo Bonzini
2014-08-24 16:57                                                                                 ` Andrey Korolyov
2014-08-24 18:51                                                                                   ` Andrey Korolyov
2014-08-24 20:14                                                                                     ` Andrey Korolyov
2014-08-25 10:45                                                                                       ` Paolo Bonzini
2014-08-25 10:51                                                                                         ` Andrey Korolyov
2014-09-04 16:38                                                                                     ` Marcelo Tosatti
2014-09-04 16:52                                                                                       ` Andrey Korolyov
2014-09-04 18:54                                                                                         ` Marcelo Tosatti
2014-09-04 18:54                                                                                           ` Marcelo Tosatti
2014-09-04 19:13                                                                                             ` Andrey Korolyov
2014-08-22 17:55                                                                   ` Paolo Bonzini
2014-10-09 19:07                                                   ` Eduardo Habkost
2014-10-10  7:33                                                     ` Marcin Gibuła
2014-10-11 12:58                                                       ` Eduardo Habkost
2014-07-16  7:35         ` Marcin Gibuła [this message]
2014-07-16 12:00           ` Marcelo Tosatti

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=53C62B34.60505@beyond.pl \
    --to=m.gibula@beyond.pl \
    --cc=amit.shah@redhat.com \
    --cc=andrey@xdel.ru \
    --cc=famz@redhat.com \
    --cc=mtosatti@redhat.com \
    --cc=pbonzini@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.