David Sharp | 8cbd9cc | 2012-11-13 12:18:21 -0800 | [diff] [blame] | 1 | /* |
2 | * X86 trace clocks | ||||
3 | */ | ||||
4 | #include <asm/trace_clock.h> | ||||
5 | #include <asm/barrier.h> | ||||
6 | #include <asm/msr.h> | ||||
7 | |||||
8 | /* | ||||
9 | * trace_clock_x86_tsc(): A clock that is just the cycle counter. | ||||
10 | * | ||||
11 | * Unlike the other clocks, this is not in nanoseconds. | ||||
12 | */ | ||||
13 | u64 notrace trace_clock_x86_tsc(void) | ||||
14 | { | ||||
15 | u64 ret; | ||||
16 | |||||
17 | rdtsc_barrier(); | ||||
18 | rdtscll(ret); | ||||
19 | |||||
20 | return ret; | ||||
21 | } |