aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--arch/x86/include/asm/trace-clock.h12
-rw-r--r--arch/x86/kernel/trace-clock.c2
2 files changed, 4 insertions, 10 deletions
diff --git a/arch/x86/include/asm/trace-clock.h b/arch/x86/include/asm/trace-clock.h
index 01bc2f5221c..5f6a36684c9 100644
--- a/arch/x86/include/asm/trace-clock.h
+++ b/arch/x86/include/asm/trace-clock.h
@@ -30,11 +30,9 @@ static inline u32 trace_clock_read32(void)
{
u32 cycles;
- if (likely(trace_clock_is_sync())) {
- get_cycles_barrier();
+ if (likely(trace_clock_is_sync()))
cycles = (u32)get_cycles(); /* only need the 32 LSB */
- get_cycles_barrier();
- } else
+ else
cycles = (u32)trace_clock_async_tsc_read();
return cycles;
}
@@ -43,11 +41,9 @@ static inline u64 trace_clock_read64(void)
{
u64 cycles;
- if (likely(trace_clock_is_sync())) {
- get_cycles_barrier();
+ if (likely(trace_clock_is_sync()))
cycles = get_cycles();
- get_cycles_barrier();
- } else
+ else
cycles = trace_clock_async_tsc_read();
return cycles;
}
diff --git a/arch/x86/kernel/trace-clock.c b/arch/x86/kernel/trace-clock.c
index ec866aa9591..37cf125a940 100644
--- a/arch/x86/kernel/trace-clock.c
+++ b/arch/x86/kernel/trace-clock.c
@@ -69,9 +69,7 @@ notrace cycles_t trace_clock_async_tsc_read(void)
cycles_t new_tsc, last_tsc;
WARN_ON(!async_tsc_refcount || !async_tsc_enabled);
- rdtsc_barrier();
new_tsc = get_cycles();
- rdtsc_barrier();
last_tsc = read_last_tsc();
do {
if (new_tsc < last_tsc)