x86: Make tsc=reliable override boot time stability checks
[linux-2.6.git] / arch / x86 / kernel / tsc.c
index 71f4368b357edf2a47fd035349bfbcd8c595e882..648fb269e5d1e800e1cdb9dffc466d167122c985 100644 (file)
@@ -825,6 +825,9 @@ __cpuinit int unsynchronized_tsc(void)
 
        if (boot_cpu_has(X86_FEATURE_CONSTANT_TSC))
                return 0;
+
+       if (tsc_clocksource_reliable)
+               return 0;
        /*
         * Intel systems are normally all synchronized.
         * Exceptions must mark TSC as unstable:
@@ -832,10 +835,10 @@ __cpuinit int unsynchronized_tsc(void)
        if (boot_cpu_data.x86_vendor != X86_VENDOR_INTEL) {
                /* assume multi socket systems are not synchronized: */
                if (num_possible_cpus() > 1)
-                       tsc_unstable = 1;
+                       return 1;
        }
 
-       return tsc_unstable;
+       return 0;
 }
 
 static void __init init_tsc_clocksource(void)