From: Laurent Vivier <lvivier@redhat.com>
To: David Gibson <david@gibson.dropbear.id.au>,
Michael Roth <mdroth@linux.vnet.ibm.com>
Cc: qemu-devel@nongnu.org, Alexey Kardashevskiy <aik@ozlabs.ru>,
qemu-ppc@nongnu.org, qemu-stable@nongnu.org,
Paolo Bonzini <pbonzini@redhat.com>
Subject: Re: [Qemu-devel] [PATCH] target/ppc: only save guest timebase once after stopping
Date: Thu, 26 Jul 2018 09:44:11 +0200 [thread overview]
Message-ID: <c23b3b10-a73b-24c8-36c5-114933d9b41b@redhat.com> (raw)
In-Reply-To: <20180726050746.GC12001@umbus.fritz.box>
On 26/07/2018 07:07, David Gibson wrote:
> On Thu, May 03, 2018 at 11:20:44PM -0500, Michael Roth wrote:
>> In some cases (e.g. spapr) we record guest timebase after qmp_stop()
>> via a runstate hook so we can restore it on qmp_cont(). If a migration
>> occurs in between those events we end up saving it again, this time
>> based on the current timebase the guest would be seeing had it been
>> running. This has the effect of advancing the guest timebase while
>> it is stopped, which is not what the code intends.
>>
>> Other than simple jumps in time, this has been seen to trigger what
>> appear to be RCU-related crashes in recent kernels when the advance
>> exceeds rcu_cpu_stall_timeout, and it can be triggered by fairly
>> common operations such as `virsh migrate ... --timeout 60`.
>>
>> Cc: Alexey Kardashevskiy <aik@ozlabs.ru>
>> Cc: David Gibson <david@gibson.dropbear.id.au>
>> Cc: Laurent Vivier <lvivier@redhat.com>
>> Cc: qemu-ppc@nongnu.org
>> Cc: qemu-stable@nongnu.org
>> Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
>
> Sorry, this fell off my radar for ages, but I've finally had a chance
> to look at it properly.
>
> I'm not totally convinced this handle all the possible edge cases
> correctly, but I am convinced it gives behaviour that's more correct
> than we have now. It doesn't introduce changes to the interface or
> migration stream that would break things in future, so I've applied it
> to ppc-for-3.1.
See https://bugzilla.redhat.com/show_bug.cgi?id=1571230#c8
So you revert:
commit 42043e4f1241eeb77f87f5816b5cf0b6e9583ed7
Author: Laurent Vivier <lvivier@redhat.com>
Date: Fri Jan 27 13:24:58 2017 +0100
spapr: clock should count only if vm is running
and change the behaviour compared to x86_64
6053a86 kvmclock: reduce kvmclock difference on migration
Is this what you want?
Thanks,
Laurent
next prev parent reply other threads:[~2018-07-26 7:44 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-05-04 4:20 [Qemu-devel] [PATCH] target/ppc: only save guest timebase once after stopping Michael Roth
2018-05-04 9:37 ` [Qemu-devel] [Qemu-ppc] " Greg Kurz
2018-05-04 12:18 ` Michael Roth
2018-05-04 13:50 ` Greg Kurz
2018-05-04 15:59 ` Laurent Vivier
2018-05-05 4:23 ` David Gibson
2018-05-05 4:20 ` David Gibson
2018-07-26 5:07 ` [Qemu-devel] " David Gibson
2018-07-26 7:44 ` Laurent Vivier [this message]
2018-07-27 1:09 ` David Gibson
2018-07-26 12:30 ` Michael Roth
2018-07-27 1:10 ` David Gibson
2018-07-27 12:35 ` Mark Cave-Ayland
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=c23b3b10-a73b-24c8-36c5-114933d9b41b@redhat.com \
--to=lvivier@redhat.com \
--cc=aik@ozlabs.ru \
--cc=david@gibson.dropbear.id.au \
--cc=mdroth@linux.vnet.ibm.com \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=qemu-ppc@nongnu.org \
--cc=qemu-stable@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 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).