On Sun, Sep 30, 2012 at 01:32:46PM +0200, Avi Kivity wrote:On 09/30/2012 01:23 PM, Fengguang Wu wrote:Thanks, it's good to know the root cause. All the dmesgs show the same hpet+tscOn Sun, Sep 30, 2012 at 01:10:55PM +0200, Avi Kivity wrote:Ah, tsc will certainly break on kvm if the hardware doesn't provide aOn 09/28/2012 05:35 AM, Paul E. McKenney wrote:I've checked out the dmesg that's cited by Paul, attached. Yes itOn Thu, Sep 27, 2012 at 12:40:44PM +0800, Fengguang Wu wrote:>From the logs it looks like hpet (why not kvmclock?) is used for theOn Wed, Sep 26, 2012 at 09:28:50PM -0700, Paul E. McKenney wrote:[ . . . ]On Thu, Sep 27, 2012 at 10:54:00AM +0800, Fengguang Wu wrote:On Wed, Sep 26, 2012 at 09:45:43AM -0700, Paul E. McKenney wrote:On Wed, Sep 26, 2012 at 04:15:01PM +0800, Fengguang Wu wrote:
I vaguely recall seeing something recently. But let's ask the KVM andGood spot! Yeah I noticed that huge timestamp gap, however didn't takeYow!!!But could you also please send your .config file and a description of.config attached.
the workload you are running?It's basically the below commands. The exact initrd is not relevant in
this case because it's a boot time warning before user space is
started. The stalls roughly happen 1 time on every 10 boots.
You have severe cross-CPU time-synchronization problems. See for
example the first dmesg, with the relevant part extracted right here.
One CPU believes that it is about 37 seconds past boot, and the other
CPU beleives that it is about 137 seconds past boot. Given that large
of a time difference, an RCU CPU stall warning is expected behavior.
it seriously enough..
Get your two CPUs in agreement about what time it is, and I bet thatPossibly KVM related? Because the warnings show up in many test boxes
the CPU stall warnings will go away.
running KVM and so is not likely some hardware specific issue.
timekeeping guys.
clock, it should not generate such drifts since it is a global clock.
Can you verify current_clocksource on a boot that actually failed (in
case the clocksource is switched during runtime)?
contains lines
[ 4.970051] Switching to clocksource hpet
and then
[ 7.250353] Switching to clocksource tsc
And there is no kvm-clock lines. Oh well for this particular kernel:
constant tsc source. I'm surprised the guest kernel didn't detect it
and switch back to hpet though.
switching pattern (and never switch back):
$ grep Switching dmesg-kvm_bisect2-inn-*21
dmesg-kvm_bisect2-inn-41931-2012-09-27-10-37-51-3.6.0-rc7-bisect2-00078-g593d100-21:[ 4.111415] Switching to clocksource hpet
dmesg-kvm_bisect2-inn-41931-2012-09-27-10-37-51-3.6.0-rc7-bisect2-00078-g593d100-21:[ 6.550098] Switching to clocksource tsc