Messages in this thread |  | | | Date | Sun, 21 Dec 2008 12:55:39 +0100 | | From | Jan Niehusmann <> | | Subject | Re: KVM guest lockup | |
On Fri, Dec 19, 2008 at 06:44:01PM +0100, Max Kellermann wrote:
> By starting kvm with "-s", I was able to attach gdb to KVM. The
> following backtrace is with default options:> > #0 0xffffffff8023f3e0 in update_wall_time () at kernel/time/timekeeping.c:515
[...]
> The next one is with "noapic nolapic acpi=off":
> > #0 0xffffffff8023f35a in update_wall_time () at kernel/time/timekeeping.c:501
> Both backtraces are from vanilla 2.6.28-rc8, .config attached.
[...]
Looking at the code, both these lines of code are inside a loop which
may run for quite a while if clocksource_read(clock) returns
non-monotonic values:
offset = (clocksource_read(clock) - clock->cycle_last) & clock->mask;
[...]
while (offset >= clock->cycle_interval) {
/* accumulate one interval */
offset -= clock->cycle_interval;
[...]
}
As I observed such behaviour only when the host has frequency scaling
activated: Could it be that in this case, clocksource_read(clock) on the
guest is misbehaving?
Jan
|  |