diff options
author | David Sharp <dhsharp@google.com> | 2012-11-13 21:18:21 +0100 |
---|---|---|
committer | Steven Rostedt <rostedt@goodmis.org> | 2012-11-13 21:48:27 +0100 |
commit | 8cbd9cc6254065c97c4bac42daa55ba1abe73a8e (patch) | |
tree | bb52f23f66fc6288e7efbce76ee389af0b52cc85 /include/asm-generic/trace_clock.h | |
parent | tracing: Add trace_options kernel command line parameter (diff) | |
download | linux-8cbd9cc6254065c97c4bac42daa55ba1abe73a8e.tar.xz linux-8cbd9cc6254065c97c4bac42daa55ba1abe73a8e.zip |
tracing,x86: Add a TSC trace_clock
In order to promote interoperability between userspace tracers and ftrace,
add a trace_clock that reports raw TSC values which will then be recorded
in the ring buffer. Userspace tracers that also record TSCs are then on
exactly the same time base as the kernel and events can be unambiguously
interlaced.
Tested: Enabled a tracepoint and the "tsc" trace_clock and saw very large
timestamp values.
v2:
Move arch-specific bits out of generic code.
v3:
Rename "x86-tsc", cleanups
v7:
Generic arch bits in Kbuild.
Google-Bug-Id: 6980623
Link: http://lkml.kernel.org/r/1352837903-32191-1-git-send-email-dhsharp@google.com
Acked-by: Ingo Molnar <mingo@kernel.org>
Cc: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: "H. Peter Anvin" <hpa@linux.intel.com>
Signed-off-by: David Sharp <dhsharp@google.com>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Diffstat (limited to 'include/asm-generic/trace_clock.h')
-rw-r--r-- | include/asm-generic/trace_clock.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/include/asm-generic/trace_clock.h b/include/asm-generic/trace_clock.h new file mode 100644 index 000000000000..6726f1bafb5e --- /dev/null +++ b/include/asm-generic/trace_clock.h @@ -0,0 +1,16 @@ +#ifndef _ASM_GENERIC_TRACE_CLOCK_H +#define _ASM_GENERIC_TRACE_CLOCK_H +/* + * Arch-specific trace clocks. + */ + +/* + * Additional trace clocks added to the trace_clocks + * array in kernel/trace/trace.c + * None if the architecture has not defined it. + */ +#ifndef ARCH_TRACE_CLOCKS +# define ARCH_TRACE_CLOCKS +#endif + +#endif /* _ASM_GENERIC_TRACE_CLOCK_H */ |