Re: REGRESSION: the new i386 timer code fails to sync CPUs



Hi,

Andrew Morton:
Hack out the i386 TSC sync code.

diff --git a/arch/i386/kernel/smpboot.c b/arch/i386/kernel/smpboot.c
index 6f5fea0..cd28914 100644
--- a/arch/i386/kernel/smpboot.c
+++ b/arch/i386/kernel/smpboot.c
@@ -435,7 +435,7 @@ static void __devinit smp_callin(void)
/*
* Synchronize the TSC with the BP
*/
- if (cpu_has_tsc && cpu_khz && !tsc_sync_disabled)
+ if (0 && cpu_has_tsc && cpu_khz && !tsc_sync_disabled)
synchronize_tsc_ap();
}

@@ -1305,7 +1305,7 @@ static void __init smp_boot_cpus(unsigne
/*
* Synchronize the TSC with the AP
*/
- if (cpu_has_tsc && cpucount && cpu_khz)
+ if (0 && cpu_has_tsc && cpucount && cpu_khz)
synchronize_tsc_bp();
}

I guess Matthias didn't test this patch. Can we get some obviously-correct
fix in place for 2.6.18?

This patch doesn't change the problem.

--
Matthias Urlichs | {M:U} IT Design @ m-u-it.de | smurf@xxxxxxxxxxxxxx
Disclaimer: The quote was selected randomly. Really. | http://smurf.noris.de
- -
Success is always being able to wear clothing that you actually like.
-- SJM

Attachment: signature.asc
Description: Digital signature



Relevant Pages

  • [patch] sched: improve sched_clock() on i686
    ... from TSC to jiffies). ... my old patch and now realize what the mistake was - the patch below ... this generally makes the scheduler timestamps more finegrained, ... this flag only indicated whether the notsc option was passed. ...
    (Linux-Kernel)
  • RE: [patch 1/] timers: tsc using for cpu scheduling
    ... I should underline that patch deal with the alternative which timer to ... time as a measure of CPU work for scheduling is described in the Linux ... scheduling time measurement because TSC may miss 2-3 clocks during CPU ... * It is not recommended to use this function for other than scheduler ...
    (Linux-Kernel)
  • Re: [RFC][PATCH] Runtime switching of the idle function [take 2]
    ... AMD64 x2 in the -rt patch. ... run there tests (requiring tsc not to drift) and then switch back to the ... It's been stated that the tsc drift can cause problems with the ... send the line "unsubscribe linux-kernel" in ...
    (Linux-Kernel)
  • Re: printk timestamps jumping back and forth in 2.6.25-rc.
    ... The patch was not included into the -rc6 kernel, ... * enough to synchronize slowly diverging time sources and thus ... -unsigned long long cpu_clock(int cpu) ... unsigned long flags; ...
    (Linux-Kernel)
  • [PATCH] Configure out TSC support
    ... The following patch allows to remove the code needed to support the TSC ... extern void init_tsc_clocksource; ...
    (Linux-Kernel)