Messages in this thread Patch in this message | | | Date | Wed, 09 Jul 2008 00:15:32 -0400 | From | Steven Rostedt <> | Subject | [PATCH 2/3] sched_clock: record TSC after gtod |
| |
To read the gtod we need to grab the xtime lock for read. Reading the gtod before the TSC can cause a bigger gab if the xtime lock is contended.
This patch simply reverses the order to read the TSC after the gtod. The locking in the reading of the gtod handles any barriers one might think is needed.
Signed-off-by: Steven Rostedt <srostedt@redhat.com> --- kernel/sched_clock.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
Index: linux-tip.git/kernel/sched_clock.c =================================================================== --- linux-tip.git.orig/kernel/sched_clock.c 2008-07-08 11:03:05.000000000 -0400 +++ linux-tip.git/kernel/sched_clock.c 2008-07-08 16:53:34.000000000 -0400 @@ -237,8 +237,8 @@ void sched_clock_tick(void) WARN_ON_ONCE(!irqs_disabled()); - now = sched_clock(); now_gtod = ktime_to_ns(ktime_get()); + now = sched_clock(); __raw_spin_lock(&scd->lock); __update_sched_clock(scd, now, NULL); --
| |