diff options
author | Ingo Molnar <mingo@elte.hu> | 2008-09-04 16:47:47 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-09-04 17:21:57 -0400 |
commit | 4156e9a8ef5b521185f451213d33fa661f38512e (patch) | |
tree | d6e8df44babd295a2d9e51bf95cfec6be1d758ee /arch/x86/kernel/tsc.c | |
parent | 6ac40ed0413ef4096720f966e11c7cdf259eee3f (diff) |
x86: quick TSC calibration, improve
- make sure the final TSC timestamp is reliable too
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/kernel/tsc.c')
-rw-r--r-- | arch/x86/kernel/tsc.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/x86/kernel/tsc.c b/arch/x86/kernel/tsc.c index 839070ba8465..6dab90f68515 100644 --- a/arch/x86/kernel/tsc.c +++ b/arch/x86/kernel/tsc.c | |||
@@ -317,6 +317,12 @@ static unsigned long quick_pit_calibrate(void) | |||
317 | t2 = get_cycles(); | 317 | t2 = get_cycles(); |
318 | 318 | ||
319 | /* | 319 | /* |
320 | * Make sure we can rely on the second TSC timestamp: | ||
321 | */ | ||
322 | if (!pit_expect_msb(--expect)) | ||
323 | goto failed; | ||
324 | |||
325 | /* | ||
320 | * Ok, if we get here, then we've seen the | 326 | * Ok, if we get here, then we've seen the |
321 | * MSB of the PIT decrement QUICK_PIT_ITERATIONS | 327 | * MSB of the PIT decrement QUICK_PIT_ITERATIONS |
322 | * times, and each MSB had many hits, so we never | 328 | * times, and each MSB had many hits, so we never |