|
|
|
|
|
|
|
|
|
|
xen-devel
Re: [PATCH] Re: [Xen-devel] Time went backwards
On 14 Mar 2006, at 15:43, Rik van Riel wrote:
Actually, we come into timer_interrupt() sometimes with
blocked + stolen > delta_cpu, so the bugfix is valid.
I just no longer understand how we can get into this
situation...
Could be due to horrendous clock jitter across CPUs.
Not on a single CPU system ;)
Hmmm... well, a few suggestions:
1. The first do-while loop in timer_interrupt() in time-xen.c aims to
get a consistent snapshot of blocked, stolen and delta_cpu, by checking
timestamp-info version numbers in the two while predicates. I just
added a rmb() to time_values_up_to_date() -- required for absolute
accuracy and will also act as a compiler barrier too. But the
likelihood of gcc having moved that test earlier is very small I think.
:-) If it had, though, you could end up with a later snapshot of
stolen/blocked than of delta_cpu, which would be bad.
2. Maybe the time synchronising code in Xen is broken. I tested it
pretty hard when I implemented it, but you never know. It would be bad
if time could step backwards during local_time_calibration() in
xen/arch/x86/time.c. It might be worth doing a before-and-after check
in that function (e.g., see whether value returned by get_s_time() gets
smaller).
This bug can't be *that* hard to find on a single CPU system. :-)
-- Keir
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
<Prev in Thread] |
Current Thread |
[Next in Thread> |
- Re: [Xen-devel] Time went backwards, (continued)
- Re: [Xen-devel] Time went backwards, Rik van Riel
- Re: [Xen-devel] Time went backwards, Rik van Riel
- [PATCH] Re: [Xen-devel] Time went backwards, Rik van Riel
- Re: [PATCH] Re: [Xen-devel] Time went backwards, Keir Fraser
- Re: [PATCH] Re: [Xen-devel] Time went backwards, Rik van Riel
- Re: [PATCH] Re: [Xen-devel] Time went backwards, Keir Fraser
- Re: [PATCH] Re: [Xen-devel] Time went backwards, Rik van Riel
- Re: [PATCH] Re: [Xen-devel] Time went backwards, Rik van Riel
- Re: [PATCH] Re: [Xen-devel] Time went backwards, Keir Fraser
- Re: [PATCH] Re: [Xen-devel] Time went backwards, Rik van Riel
- Re: [PATCH] Re: [Xen-devel] Time went backwards,
Keir Fraser <=
|
|
|
|
|