diff options
| author | Thomas Gleixner <tglx@linutronix.de> | 2010-05-10 11:59:37 +0200 | 
|---|---|---|
| committer | Thomas Gleixner <tglx@linutronix.de> | 2010-05-10 14:20:42 +0200 | 
| commit | dbb6be6d5e974c42bbecd183effaa0df69e1dd8b (patch) | |
| tree | 5735cb47e70853d057a9881dd0ce44b83e88fa63 /include/linux/ftrace_event.h | |
| parent | 6a867a395558a7f882d041783e4cdea6744ca2bf (diff) | |
| parent | b57f95a38233a2e73b679bea4a5453a1cc2a1cc9 (diff) | |
| download | olio-linux-3.10-dbb6be6d5e974c42bbecd183effaa0df69e1dd8b.tar.xz olio-linux-3.10-dbb6be6d5e974c42bbecd183effaa0df69e1dd8b.zip  | |
Merge branch 'linus' into timers/core
Reason: Further posix_cpu_timer patches depend on mainline changes
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'include/linux/ftrace_event.h')
| -rw-r--r-- | include/linux/ftrace_event.h | 23 | 
1 files changed, 13 insertions, 10 deletions
diff --git a/include/linux/ftrace_event.h b/include/linux/ftrace_event.h index 6b7c444ab8f..c0f4b364c71 100644 --- a/include/linux/ftrace_event.h +++ b/include/linux/ftrace_event.h @@ -131,12 +131,12 @@ struct ftrace_event_call {  	void			*mod;  	void			*data; -	int			profile_count; -	int			(*profile_enable)(struct ftrace_event_call *); -	void			(*profile_disable)(struct ftrace_event_call *); +	int			perf_refcount; +	int			(*perf_event_enable)(struct ftrace_event_call *); +	void			(*perf_event_disable)(struct ftrace_event_call *);  }; -#define FTRACE_MAX_PROFILE_SIZE	2048 +#define PERF_MAX_TRACE_SIZE	2048  #define MAX_FILTER_PRED		32  #define MAX_FILTER_STR_VAL	256	/* Should handle KSYM_SYMBOL_LEN */ @@ -187,22 +187,25 @@ do {									\  #ifdef CONFIG_PERF_EVENTS  struct perf_event; -extern int ftrace_profile_enable(int event_id); -extern void ftrace_profile_disable(int event_id); + +DECLARE_PER_CPU(struct pt_regs, perf_trace_regs); + +extern int perf_trace_enable(int event_id); +extern void perf_trace_disable(int event_id);  extern int ftrace_profile_set_filter(struct perf_event *event, int event_id,  				     char *filter_str);  extern void ftrace_profile_free_filter(struct perf_event *event);  extern void * -ftrace_perf_buf_prepare(int size, unsigned short type, int *rctxp, +perf_trace_buf_prepare(int size, unsigned short type, int *rctxp,  			 unsigned long *irq_flags);  static inline void -ftrace_perf_buf_submit(void *raw_data, int size, int rctx, u64 addr, -		       u64 count, unsigned long irq_flags) +perf_trace_buf_submit(void *raw_data, int size, int rctx, u64 addr, +		       u64 count, unsigned long irq_flags, struct pt_regs *regs)  {  	struct trace_entry *entry = raw_data; -	perf_tp_event(entry->type, addr, count, raw_data, size); +	perf_tp_event(entry->type, addr, count, raw_data, size, regs);  	perf_swevent_put_recursion_context(rctx);  	local_irq_restore(irq_flags);  }  |