summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThomas Gleixner <tglx@linutronix.de>2016-11-29 20:28:31 +0100
committerThomas Gleixner <tglx@linutronix.de>2016-11-30 09:44:52 +0100
commitb836554386cc77f31ab43a8492a2587e0c51d51e (patch)
treef0b48454f0758cf45c943ec74054566a35e0f08b
parentx86/tsc: Try to adjust TSC if sync test fails (diff)
downloadlinux-b836554386cc77f31ab43a8492a2587e0c51d51e.tar.xz
linux-b836554386cc77f31ab43a8492a2587e0c51d51e.zip
x86/tsc: Fix broken CONFIG_X86_TSC=n build
Add the missing return statement to the inline stub tsc_store_and_check_tsc_adjust() and add the other stubs to make a SMP=y,TSC=n build happy. While at it, remove the unused variable from the UP variant of tsc_store_and_check_tsc_adjust(). Fixes: commit ba75fb646931 ("x86/tsc: Sync test only for the first cpu in a package") Reported-by: kbuild test robot <fengguang.wu@intel.com> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
-rw-r--r--arch/x86/include/asm/tsc.h9
-rw-r--r--arch/x86/kernel/tsc_sync.c2
2 files changed, 6 insertions, 5 deletions
diff --git a/arch/x86/include/asm/tsc.h b/arch/x86/include/asm/tsc.h
index 04721d54d8d9..c054eaa7dc94 100644
--- a/arch/x86/include/asm/tsc.h
+++ b/arch/x86/include/asm/tsc.h
@@ -45,15 +45,16 @@ extern int tsc_clocksource_reliable;
* Boot-time check whether the TSCs are synchronized across
* all CPUs/cores:
*/
-extern void check_tsc_sync_source(int cpu);
-extern void check_tsc_sync_target(void);
-
#ifdef CONFIG_X86_TSC
extern bool tsc_store_and_check_tsc_adjust(void);
extern void tsc_verify_tsc_adjust(void);
+extern void check_tsc_sync_source(int cpu);
+extern void check_tsc_sync_target(void);
#else
-static inline bool tsc_store_and_check_tsc_adjust(void) { }
+static inline bool tsc_store_and_check_tsc_adjust(void) { return false; }
static inline void tsc_verify_tsc_adjust(void) { }
+static inline void check_tsc_sync_source(int cpu) { }
+static inline void check_tsc_sync_target(void) { }
#endif
extern int notsc_setup(char *);
diff --git a/arch/x86/kernel/tsc_sync.c b/arch/x86/kernel/tsc_sync.c
index d7f48a640ff5..8fde44f8cfec 100644
--- a/arch/x86/kernel/tsc_sync.c
+++ b/arch/x86/kernel/tsc_sync.c
@@ -61,7 +61,7 @@ void tsc_verify_tsc_adjust(void)
#ifndef CONFIG_SMP
bool __init tsc_store_and_check_tsc_adjust(void)
{
- struct tsc_adjust *ref, *cur = this_cpu_ptr(&tsc_adjust);
+ struct tsc_adjust *cur = this_cpu_ptr(&tsc_adjust);
s64 bootval;
if (!boot_cpu_has(X86_FEATURE_TSC_ADJUST))