Current-Users archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: What to do about "WARNING: negative runtime; monotonic clock has gone backwards"
Taylor R Campbell <riastradh%NetBSD.org@localhost> writes:
[snip]
> I don't know what the sparc timecounter frequency is, but the Xen
> system timecounter returns units of nanoseconds, i.e., runs at 1 GHz,
> well within these bounds. So this kind of wraparound leading to
> apparently negative runtime -- that is, l->l_stime going backwards --
> should not be possible as long as we are calling tc_windup() at a
> frequency of at least 1 GHz / (2^k / 2) = 0.47 Hz.
>
> That said, at a 32-bit timecounter frequency of 1 GHz, if there is a
> period of about 2^32 / 1 GHz ~= 4.3sec during which we miss all
> consecutive hardclock ticks, that would violate the timecounter(9)
> assumptions, and tc_delta(th) may go backwards if that happens.
>
> So I think we need to find out why we're missing Xen hardclock timer
> interrupts. Should also make the dtrace probe show exactly how many
> hardclock ticks in a batch happened, and should raise an alarm (with
> or without dtrace) if it exceeds a threshold.
[snip]
On the system that I have that exhibits the negative runtime problem, it
may very well be the case that hardclocks are missed for 4.3sec. The
system has to have been up for a while and busy as a prereq., but if I
then run:
dtrace -x nolibs -n 'sdt:xen:clock:, sdt:xen:hardclock:, sdt:xen:timecounter: { printf("%d %d %d %d %d %d %d %d", arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7) }'
on what is otherwise an idle system there are a continous stream of
hardclock missed events.
And... 'vmstat -e | grep -e tsc -e systime -e hardclock' shows:
vcpu0 missed hardclock 6882953 74 intr
vcpu1 missed hardclock 32268 0 intr
.. that second number, 74, in this case, is a rate.. that is, there are
continuous missed hardclocks even while idle.
If the system is freshly rebooted, the vmstat will not show anything
until after the system has been busy for a while and likewise the dtrace
is nearly free of events.
--
Brad Spencer - brad%anduin.eldar.org@localhost - KC8VKS - http://anduin.eldar.org
Home |
Main Index |
Thread Index |
Old Index