diff options
author | Ingo Molnar <mingo@elte.hu> | 2009-02-28 04:15:58 -0500 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2009-02-28 04:15:58 -0500 |
commit | acdb2c287916ce247c09d460266370af45da55c5 (patch) | |
tree | e09d6f8fa8f2b28d363374d027f9b4af1d3888cb /kernel/trace/trace.h | |
parent | e9abf4c59d75cd71f118764376d037a677f573d0 (diff) | |
parent | f2034f1e1adaac6713a6d48b5a2d4f3aa3e63ccb (diff) |
Merge branch 'tip/tracing/ftrace' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into tracing/ftrace
Diffstat (limited to 'kernel/trace/trace.h')
-rw-r--r-- | kernel/trace/trace.h | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/kernel/trace/trace.h b/kernel/trace/trace.h index 632191770aac..f6fa0b9f83a8 100644 --- a/kernel/trace/trace.h +++ b/kernel/trace/trace.h | |||
@@ -442,6 +442,12 @@ void trace_buffer_unlock_commit(struct trace_array *tr, | |||
442 | struct ring_buffer_event *event, | 442 | struct ring_buffer_event *event, |
443 | unsigned long flags, int pc); | 443 | unsigned long flags, int pc); |
444 | 444 | ||
445 | struct ring_buffer_event * | ||
446 | trace_current_buffer_lock_reserve(unsigned char type, unsigned long len, | ||
447 | unsigned long flags, int pc); | ||
448 | void trace_current_buffer_unlock_commit(struct ring_buffer_event *event, | ||
449 | unsigned long flags, int pc); | ||
450 | |||
445 | struct trace_entry *tracing_get_trace_entry(struct trace_array *tr, | 451 | struct trace_entry *tracing_get_trace_entry(struct trace_array *tr, |
446 | struct trace_array_cpu *data); | 452 | struct trace_array_cpu *data); |
447 | 453 | ||
@@ -720,4 +726,30 @@ static inline void trace_branch_disable(void) | |||
720 | } | 726 | } |
721 | #endif /* CONFIG_BRANCH_TRACER */ | 727 | #endif /* CONFIG_BRANCH_TRACER */ |
722 | 728 | ||
729 | /* trace event type bit fields, not numeric */ | ||
730 | enum { | ||
731 | TRACE_EVENT_TYPE_PRINTF = 1, | ||
732 | TRACE_EVENT_TYPE_RAW = 2, | ||
733 | }; | ||
734 | |||
735 | struct ftrace_event_call { | ||
736 | char *name; | ||
737 | char *system; | ||
738 | struct dentry *dir; | ||
739 | int enabled; | ||
740 | int (*regfunc)(void); | ||
741 | void (*unregfunc)(void); | ||
742 | int id; | ||
743 | struct dentry *raw_dir; | ||
744 | int raw_enabled; | ||
745 | int type; | ||
746 | int (*raw_init)(void); | ||
747 | int (*raw_reg)(void); | ||
748 | void (*raw_unreg)(void); | ||
749 | }; | ||
750 | |||
751 | void event_trace_printk(unsigned long ip, const char *fmt, ...); | ||
752 | extern struct ftrace_event_call __start_ftrace_events[]; | ||
753 | extern struct ftrace_event_call __stop_ftrace_events[]; | ||
754 | |||
723 | #endif /* _LINUX_KERNEL_TRACE_H */ | 755 | #endif /* _LINUX_KERNEL_TRACE_H */ |