xref: /openbmc/linux/kernel/trace/trace_output.h (revision 80a76994)
1bb730b58SSteven Rostedt (VMware) // SPDX-License-Identifier: GPL-2.0
2f0868d1eSSteven Rostedt #ifndef __TRACE_EVENTS_H
3f0868d1eSSteven Rostedt #define __TRACE_EVENTS_H
4f0868d1eSSteven Rostedt 
59504504cSSteven Rostedt #include <linux/trace_seq.h>
6f0868d1eSSteven Rostedt #include "trace.h"
7f0868d1eSSteven Rostedt 
85ef841f6SSteven Rostedt extern enum print_line_t
909ae7234SSteven Rostedt (Red Hat) trace_print_bputs_msg_only(struct trace_iterator *iter);
1009ae7234SSteven Rostedt (Red Hat) extern enum print_line_t
115ef841f6SSteven Rostedt trace_print_bprintk_msg_only(struct trace_iterator *iter);
125ef841f6SSteven Rostedt extern enum print_line_t
135ef841f6SSteven Rostedt trace_print_printk_msg_only(struct trace_iterator *iter);
145ef841f6SSteven Rostedt 
15769b0441SFrederic Weisbecker extern int
16f0868d1eSSteven Rostedt seq_print_ip_sym(struct trace_seq *s, unsigned long ip,
17f0868d1eSSteven Rostedt 		unsigned long sym_flags);
18f0868d1eSSteven Rostedt 
19773c1670SSteven Rostedt (VMware) extern void trace_seq_print_sym(struct trace_seq *s, unsigned long address, bool offset);
20f285901bSEduard - Gabriel Munteanu extern int trace_print_context(struct trace_iterator *iter);
21f285901bSEduard - Gabriel Munteanu extern int trace_print_lat_context(struct trace_iterator *iter);
22*80a76994SSteven Rostedt (Google) extern enum print_line_t print_event_fields(struct trace_iterator *iter,
23*80a76994SSteven Rostedt (Google) 					    struct trace_event *event);
24c4a8e8beSFrederic Weisbecker 
254f535968SLai Jiangshan extern void trace_event_read_lock(void);
264f535968SLai Jiangshan extern void trace_event_read_unlock(void);
27f285901bSEduard - Gabriel Munteanu extern struct trace_event *ftrace_find_event(int type);
28f0868d1eSSteven Rostedt 
29f285901bSEduard - Gabriel Munteanu extern enum print_line_t trace_nop_print(struct trace_iterator *iter,
30a9a57763SSteven Rostedt 					 int flags, struct trace_event *event);
31f81c972dSSteven Rostedt extern int
32f81c972dSSteven Rostedt trace_print_lat_fmt(struct trace_seq *s, struct trace_entry *entry);
33f633cef0SSteven Rostedt 
34110bf2b7SSteven Rostedt /* used by module unregistering */
359023c930SSteven Rostedt (Red Hat) extern int __unregister_trace_event(struct trace_event *event);
3652f6ad6dSzhangwei(Jovi) extern struct rw_semaphore trace_event_sem;
37110bf2b7SSteven Rostedt 
3819a7fe20SSteven Rostedt (Red Hat) #define SEQ_PUT_FIELD(s, x)				\
3919a7fe20SSteven Rostedt (Red Hat) 	trace_seq_putmem(s, &(x), sizeof(x))
40f633cef0SSteven Rostedt 
4119a7fe20SSteven Rostedt (Red Hat) #define SEQ_PUT_HEX_FIELD(s, x)				\
4219a7fe20SSteven Rostedt (Red Hat) 	trace_seq_putmem_hex(s, &(x), sizeof(x))
43f633cef0SSteven Rostedt 
44f0868d1eSSteven Rostedt #endif
45f0868d1eSSteven Rostedt 
46