From 3b43d87542601f61e80f3e0481b667fbb48c36eb Mon Sep 17 00:00:00 2001 From: Alok Kataria Date: Tue, 21 Feb 2012 18:19:55 -0800 Subject: [PATCH] --- yaml --- r: 297385 b: refs/heads/master c: 57779dc2b3b75bee05ef5d1ada47f615f7a13932 h: refs/heads/master i: 297383: 371d05dc7a1a3cd6dcd05220189a606f5030bb68 v: v3 --- [refs] | 2 +- trunk/arch/x86/kernel/tsc.c | 10 ++++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index efc52a4a0b98..f08bacdcf758 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 4a649903f91232d02284d53724b0a45728111767 +refs/heads/master: 57779dc2b3b75bee05ef5d1ada47f615f7a13932 diff --git a/trunk/arch/x86/kernel/tsc.c b/trunk/arch/x86/kernel/tsc.c index a62c201c97ec..6fcfcb3865c2 100644 --- a/trunk/arch/x86/kernel/tsc.c +++ b/trunk/arch/x86/kernel/tsc.c @@ -932,6 +932,16 @@ static int __init init_tsc_clocksource(void) clocksource_tsc.rating = 0; clocksource_tsc.flags &= ~CLOCK_SOURCE_IS_CONTINUOUS; } + + /* + * Trust the results of the earlier calibration on systems + * exporting a reliable TSC. + */ + if (boot_cpu_has(X86_FEATURE_TSC_RELIABLE)) { + clocksource_register_khz(&clocksource_tsc, tsc_khz); + return 0; + } + schedule_delayed_work(&tsc_irqwork, 0); return 0; }