parisc: Mark sched_clock unstable only if clocks are not syncronized
We check at runtime if the cr16 clocks are stable across CPUs. Only mark the sched_clock unstable by calling clear_sched_clock_stable() if we know that we run on a system which isn't syncronized across CPUs. Signed-off-by: Helge Deller <deller@gmx.de>
This commit is contained in:
parent
907872baa9
commit
d97180ad68
|
@ -150,8 +150,6 @@ void __init setup_arch(char **cmdline_p)
|
|||
#ifdef CONFIG_PA11
|
||||
dma_ops_init();
|
||||
#endif
|
||||
|
||||
clear_sched_clock_stable();
|
||||
}
|
||||
|
||||
/*
|
||||
|
|
|
@ -265,6 +265,9 @@ static int __init init_cr16_clocksource(void)
|
|||
(cpu0_loc == per_cpu(cpu_data, cpu).cpu_loc))
|
||||
continue;
|
||||
|
||||
/* mark sched_clock unstable */
|
||||
clear_sched_clock_stable();
|
||||
|
||||
clocksource_cr16.name = "cr16_unstable";
|
||||
clocksource_cr16.flags = CLOCK_SOURCE_UNSTABLE;
|
||||
clocksource_cr16.rating = 0;
|
||||
|
@ -272,10 +275,6 @@ static int __init init_cr16_clocksource(void)
|
|||
}
|
||||
}
|
||||
|
||||
/* XXX: We may want to mark sched_clock stable here if cr16 clocks are
|
||||
* in sync:
|
||||
* (clocksource_cr16.flags == CLOCK_SOURCE_IS_CONTINUOUS) */
|
||||
|
||||
/* register at clocksource framework */
|
||||
clocksource_register_hz(&clocksource_cr16,
|
||||
100 * PAGE0->mem_10msec);
|
||||
|
|
Loading…
Reference in New Issue