Commit 4c5e3c63 authored by Thomas Gleixner's avatar Thomas Gleixner

x86/tsc: Move sync cleanup to a safe place

Cleaning up the stop marker on the control CPU is wrong when we want to add
retry support. Move the cleanup to the starting CPU.
Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
Reviewed-by: default avatarIngo Molnar <mingo@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Yinghai Lu <yinghai@kernel.org>
Cc: Borislav Petkov <bp@alien8.de>
Link: http://lkml.kernel.org/r/20161119134017.892095627@linutronix.deSigned-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
parent a36f5136
...@@ -266,11 +266,6 @@ void check_tsc_sync_source(int cpu) ...@@ -266,11 +266,6 @@ void check_tsc_sync_source(int cpu)
return; return;
} }
/*
* Reset it - in case this is a second bootup:
*/
atomic_set(&stop_count, 0);
/* /*
* Wait for the target to start or to skip the test: * Wait for the target to start or to skip the test:
*/ */
...@@ -360,6 +355,11 @@ void check_tsc_sync_target(void) ...@@ -360,6 +355,11 @@ void check_tsc_sync_target(void)
*/ */
while (atomic_read(&stop_count) != cpus) while (atomic_read(&stop_count) != cpus)
cpu_relax(); cpu_relax();
/*
* Reset it for the next sync test:
*/
atomic_set(&stop_count, 0);
} }
#endif /* CONFIG_SMP */ #endif /* CONFIG_SMP */
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment