From: George Anzinger <george@mvista.com>
To: john stultz <johnstul@us.ibm.com>
Cc: Ingo Molnar <mingo@elte.hu>,
Fernando Lopez-Lezcano <nando@ccrma.Stanford.EDU>,
Mark Knecht <markknecht@gmail.com>,
Rui Nuno Capela <rncbc@rncbc.org>,
Steven Rostedt <rostedt@goodmis.org>,
david singleton <dsingleton@mvista.com>,
Thomas Gleixner <tglx@linutronix.de>,
linux-kernel@vger.kernel.org, cc@ccrma.Stanford.EDU,
William Weston <weston@lysdexia.org>
Subject: Re: 2.6.14-rc4-rt7
Date: Tue, 25 Oct 2005 13:12:26 -0700 [thread overview]
Message-ID: <435E91AA.7080900@mvista.com> (raw)
In-Reply-To: <1130264218.27168.320.camel@cog.beaverton.ibm.com>
john stultz wrote:
> On Tue, 2005-10-25 at 17:44 +0200, Ingo Molnar wrote:
>
>>John
>>
>>i found one source of timekeeping bugs on SMP boxes, it's the
>>non-monotonicity of the TSC:
>>
>>... time warped from 1270809453 to 1270808096.
>>... MTSC warped from 0000000a731a8c3c [0] to 0000000a731a899c [2].
>>... MTSC warped from 0000000a7c93baec [0] to 0000000a7c93b7a8 [3].
>>... MTSC warped from 0000000a881d6afc [0] to 0000000a881d67d0 [2].
>>... MTSC warped from 0000000a924217a0 [0] to 0000000a924216ac [3].
>>... MTSC warped from 0000000a9c592788 [0] to 0000000a9c59232c [2].
>>... MTSC warped from 0000000aa7aa95c8 [0] to 0000000aa7aa9338 [3].
>>... MTSC warped from 0000000b33206d60 [0] to 0000000b33206a48 [3].
>>... time warped from 26699635824 to 26699633144.
>>... MTSC warped from 00000013f379cb88 [0] to 00000013f379c7e0 [3].
>>... MTSC warped from 0000001413df8660 [0] to 0000001413df8200 [3].
>>... MTSC warped from 00000014194f5360 [1] to 00000014194f51b0 [2].
>>... time warped from 60775269225 to 60775266727.
>>
>>the number in square brackets is the CPU#. I.e. CPUs on this 4-CPU box
>>have small TSC differences, which ends up leaking into the generic TOD
>>code, causing real time warps, which causes ktimer weirdnesses (timers
>>failed to expire, etc.).
>>
>>(the above output tracks TSC results globally, under a spinlock. It also
>>detects time-warps that propagate into the monotonic clock output.)
>>
>>unfortunately, there's no easy solution for this. We could make
>>cycle_last per-CPU, but that again brings up the question of how to set
>>up the per-CPU 'TSC offset' values - those would need similar technique
>>that the current clear-all-TSCs-on-all-CPUs code does - which as we can
>>see failed ...
>
>
>
> Indeed. This is a nasty issue can affect a number of different systems.
> The best solution in my mind is to utilize alternative clocksources when
> necessary (one of the main reasons for creating the flexible clocksource
> interface: so we can easily use something else).
The TSC is such a fast and, usually, accurate answer, I think it deserves a little effort to save
it. With your new clock code I think we could use per cpu TSC counters, read the full 64 bits and,
in real corner cases, even per cpu conversion "constants" and solve this problem.
George
>
> In my patches, I have a function mark_tsc_unstable(), when called will
> drop the tsc's rating value and will cause another clocksource to be
> chosen (as long as one is available). Right now we call it when we know
> the TSC is going to have problems. But maybe we should be more dynamic
> in our detection.
>
> Do you have any details about the hardware? Are the TSCs not being
> synced well enough, or are they falling out of sync? i386 is a bit more
> aggressive about using the TSC in SMP systems, where x86-64 has more
> conditionals. Maybe some of the x86-64 logic should be moved to i386 as
> well.
>
> thanks
> -john
>
--
George Anzinger george@mvista.com
HRT (High-res-timers): http://sourceforge.net/projects/high-res-timers/
next prev parent reply other threads:[~2005-10-25 20:13 UTC|newest]
Thread overview: 117+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-10-17 16:05 2.6.14-rc4-rt7 Ingo Molnar
2005-10-17 17:06 ` 2.6.14-rc4-rt7 Mark Knecht
2005-10-17 19:21 ` 2.6.14-rc4-rt7 Fernando Lopez-Lezcano
2005-10-18 1:30 ` 2.6.14-rc4-rt7 Fernando Lopez-Lezcano
2005-10-18 1:50 ` 2.6.14-rc4-rt7 Mark Knecht
2005-10-18 6:54 ` 2.6.14-rc4-rt7 Ingo Molnar
2005-10-18 7:28 ` 2.6.14-rc4-rt7 Ingo Molnar
2005-10-18 14:11 ` 2.6.14-rc4-rt7 K.R. Foley
2005-10-18 14:49 ` 2.6.14-rc4-rt7 Ingo Molnar
2005-10-18 21:04 ` 2.6.14-rc4-rt7 Fernando Lopez-Lezcano
2005-10-18 21:31 ` 2.6.14-rc4-rt7 William Weston
2005-10-19 6:01 ` 2.6.14-rc4-rt7 Steven Rostedt
2005-10-19 11:19 ` 2.6.14-rc4-rt7 Ingo Molnar
2005-10-20 19:12 ` 2.6.14-rc4-rt7 Fernando Lopez-Lezcano
2005-10-20 19:16 ` 2.6.14-rc4-rt7 Ingo Molnar
2005-10-20 23:55 ` 2.6.14-rc4-rt7 Fernando Lopez-Lezcano
2005-10-21 8:05 ` 2.6.14-rc4-rt7 Ingo Molnar
2005-10-21 23:25 ` 2.6.14-rc4-rt7 Fernando Lopez-Lezcano
2005-10-22 0:20 ` 2.6.14-rc4-rt7 Mark Knecht
2005-10-22 3:41 ` 2.6.14-rc4-rt7 Ingo Molnar
2005-10-22 5:12 ` 2.6.14-rc4-rt7 Lee Revell
2005-10-22 23:25 ` 2.6.14-rc4-rt7 Fernando Lopez-Lezcano
2005-10-22 3:58 ` 2.6.14-rc4-rt7 Ingo Molnar
2005-10-24 19:28 ` 2.6.14-rc4-rt7 Fernando Lopez-Lezcano
2005-10-24 19:38 ` 2.6.14-rc4-rt7 Fernando Lopez-Lezcano
2005-10-24 19:46 ` 2.6.14-rc4-rt7 john stultz
2005-10-25 9:17 ` 2.6.14-rc4-rt7 Antonio
2005-10-25 15:44 ` 2.6.14-rc4-rt7 Ingo Molnar
2005-10-25 15:58 ` 2.6.14-rc4-rt7 linux-os (Dick Johnson)
2005-10-25 17:35 ` 2.6.14-rc4-rt7 Fernando Lopez-Lezcano
2005-10-25 18:16 ` 2.6.14-rc4-rt7 john stultz
2005-10-25 20:12 ` George Anzinger [this message]
2005-10-26 8:28 ` 2.6.14-rc4-rt7 Ingo Molnar
2005-10-26 16:03 ` 2.6.14-rc4-rt7 George Anzinger
2005-10-26 17:17 ` 2.6.14-rc4-rt7 George Anzinger
2005-10-26 20:45 ` 2.6.14-rc4-rt7 Rui Nuno Capela
2005-10-26 22:07 ` 2.6.14-rc4-rt7 William Weston
2005-10-26 23:33 ` 2.6.14-rc4-rt7 john stultz
2005-10-26 23:54 ` 2.6.14-rc4-rt7 William Weston
2005-10-26 23:58 ` 2.6.14-rc4-rt7 Steven Rostedt
2005-10-27 0:11 ` 2.6.14-rc4-rt7 john stultz
2005-10-27 0:34 ` 2.6.14-rc4-rt7 William Weston
2005-10-26 23:57 ` 2.6.14-rc4-rt7 Steven Rostedt
2005-10-27 0:02 ` 2.6.14-rc4-rt7 William Weston
2005-10-27 0:45 ` 2.6.14-rc4-rt7 john stultz
2005-10-27 1:07 ` 2.6.14-rc4-rt7 Steven Rostedt
2005-10-27 1:22 ` 2.6.14-rc4-rt7 john stultz
2005-10-27 1:37 ` 2.6.14-rc4-rt7 Steven Rostedt
2005-10-27 1:52 ` 2.6.14-rc4-rt7 john stultz
2005-10-27 2:11 ` 2.6.14-rc4-rt7 Steven Rostedt
2005-10-27 22:01 ` 2.6.14-rc4-rt7 William Weston
2005-10-27 22:32 ` 2.6.14-rc4-rt7 Steven Rostedt
2005-10-27 1:26 ` 2.6.14-rc4-rt7 Steven Rostedt
2005-10-27 8:01 ` 2.6.14-rc4-rt7 Rui Nuno Capela
2005-10-27 17:44 ` 2.6.14-rc4-rt7 Steven Rostedt
2005-10-27 23:18 ` 2.6.14-rc4-rt7 Rui Nuno Capela
2005-10-28 17:13 ` 2.6.14-rc4-rt7 Fernando Lopez-Lezcano
2005-11-03 22:13 ` 2.6.14-rc4-rt7 - [PATCH] improved boot time TSC synchronization Jim Houston
2005-10-24 20:39 ` 2.6.14-rc4-rt7 Steven Rostedt
2005-10-24 21:00 ` 2.6.14-rc4-rt7 Lee Revell
2005-10-17 21:43 ` 2.6.14-rc4-rt7 Daniel Walker
2005-10-17 22:03 ` 2.6.14-rc4-rt7 Thomas Gleixner
2005-10-17 22:05 ` 2.6.14-rc4-rt7 Daniel Walker
2005-10-17 22:15 ` 2.6.14-rc4-rt7 Thomas Gleixner
2005-10-18 6:42 ` 2.6.14-rc4-rt7 Ingo Molnar
2005-10-18 16:23 ` 2.6.14-rc4-rt7 Daniel Walker
2005-10-18 20:26 ` 2.6.14-rc4-rt7 Ingo Molnar
2005-10-18 0:19 ` 2.6.14-rc4-rt7 Daniel Walker
2005-10-18 6:45 ` 2.6.14-rc4-rt7 Ingo Molnar
2005-10-20 19:54 ` 2.6.14-rc5-rt1 Ingo Molnar
2005-10-20 23:33 ` 2.6.14-rc5-rt1 Felix Oxley
2005-10-21 0:39 ` 2.6.14-rc5-rt1 Mark Knecht
2005-10-21 13:47 ` 2.6.14-rc5-rt1 Mark Knecht
2005-10-21 10:01 ` 2.6.14-rc5-rt1 Felix Oxley
2005-10-21 10:16 ` 2.6.14-rc5-rt1 Ingo Molnar
2005-10-21 10:18 ` 2.6.14-rc5-rt1 Felix Oxley
2005-10-21 10:26 ` 2.6.14-rc5-rt1 Felix Oxley
2005-10-22 23:23 ` 2.6.14-rc5-rt1 Felix Oxley
2005-10-24 22:28 ` [ANNOUNCE] 2.6.14-rc5-rt5 kgdb update George Anzinger
2005-11-12 15:32 ` Ingo Molnar
2005-11-12 15:33 ` Ingo Molnar
2005-11-12 16:10 ` George Anzinger
2005-10-30 13:33 ` 2.6.14-rt1 Ingo Molnar
2005-10-30 14:58 ` 2.6.14-rt1 K.R. Foley
2005-10-30 15:41 ` 2.6.14-rt1 Steven Rostedt
2005-10-30 17:17 ` 2.6.14-rt1 Ingo Molnar
2005-10-30 17:19 ` 2.6.14-rt1 Ingo Molnar
2005-10-30 16:30 ` 2.6.14-rt1 Mark Knecht
2005-10-31 18:13 ` 2.6.14-rt1 Fernando Lopez-Lezcano
2005-11-01 20:18 ` 2.6.14-rt1 Fernando Lopez-Lezcano
2005-11-02 2:47 ` 2.6.14-rt1 Fernando Lopez-Lezcano
2005-11-02 2:55 ` 2.6.14-rt1 Carlos Antunes
2005-11-02 3:05 ` 2.6.14-rt1 Steven Rostedt
2005-11-02 3:26 ` 2.6.14-rt1 Carlos Antunes
2005-11-02 3:32 ` 2.6.14-rt1 Steven Rostedt
2005-11-02 3:36 ` 2.6.14-rt1 Carlos Antunes
2005-11-02 4:05 ` 2.6.14-rt1 Carlos Antunes
2005-11-02 9:21 ` 2.6.14-rt1 Florian Schmidt
2005-11-02 14:35 ` 2.6.14-rt1 Carlos Antunes
2005-11-02 14:40 ` 2.6.14-rt1 Ingo Molnar
2005-11-02 14:45 ` 2.6.14-rt1 Carlos Antunes
2005-11-02 15:37 ` 2.6.14-rt1 Steven Rostedt
2005-11-02 16:07 ` 2.6.14-rt1 Carlos Antunes
2005-11-02 16:24 ` 2.6.14-rt1 Steven Rostedt
2005-11-02 16:53 ` 2.6.14-rt1 Carlos Antunes
2005-11-02 16:37 ` 2.6.14-rt1 Steven Rostedt
2005-11-02 18:13 ` 2.6.14-rt1 Fernando Lopez-Lezcano
2005-11-02 7:02 ` 2.6.14-rt1 Ingo Molnar
2005-11-02 18:13 ` 2.6.14-rt1 Fernando Lopez-Lezcano
2005-11-04 7:04 ` 2.6.14-rt1 Fernando Lopez-Lezcano
2005-11-02 21:41 ` 2.6.14-rt4: __get_nsec_offset() false positives john stultz
2005-11-03 6:53 ` Ingo Molnar
2005-11-05 2:35 ` 2.6.14-rt1 (now rt6) Fernando Lopez-Lezcano
2005-11-05 3:46 ` Mark Knecht
2005-11-09 11:22 ` Ingo Molnar
2005-11-10 12:15 ` Ingo Molnar
2005-11-10 22:10 ` Fernando Lopez-Lezcano
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=435E91AA.7080900@mvista.com \
--to=george@mvista.com \
--cc=cc@ccrma.Stanford.EDU \
--cc=dsingleton@mvista.com \
--cc=johnstul@us.ibm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=markknecht@gmail.com \
--cc=mingo@elte.hu \
--cc=nando@ccrma.Stanford.EDU \
--cc=rncbc@rncbc.org \
--cc=rostedt@goodmis.org \
--cc=tglx@linutronix.de \
--cc=weston@lysdexia.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