[PATCH] x86_64: Fix collision between pmtimer and pit/hpet
On systems that do not support the HPET legacy functions (basically the IBM x460, but there could be others), in time_init() we accidentally fall into a PM timer conditional and set the vxtime_hz value to the PM timer's frequency. We then use this value with the HPET for timekeeping. This patch (which mimics the behavior in time_init_gtod) corrects the collision. Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
Родитель
df818a52fb
Коммит
fd4954714e
|
@ -915,7 +915,7 @@ void __init time_init(void)
|
||||||
cpu_khz = hpet_calibrate_tsc();
|
cpu_khz = hpet_calibrate_tsc();
|
||||||
timename = "HPET";
|
timename = "HPET";
|
||||||
#ifdef CONFIG_X86_PM_TIMER
|
#ifdef CONFIG_X86_PM_TIMER
|
||||||
} else if (pmtmr_ioport) {
|
} else if (pmtmr_ioport && !vxtime.hpet_address) {
|
||||||
vxtime_hz = PM_TIMER_FREQUENCY;
|
vxtime_hz = PM_TIMER_FREQUENCY;
|
||||||
timename = "PM";
|
timename = "PM";
|
||||||
pit_init();
|
pit_init();
|
||||||
|
|
Загрузка…
Ссылка в новой задаче