0001
0002 #ifndef _LINUX_TRACE_H
0003 #define _LINUX_TRACE_H
0004
0005 #ifdef CONFIG_TRACING
0006
0007 #define TRACE_EXPORT_FUNCTION BIT(0)
0008 #define TRACE_EXPORT_EVENT BIT(1)
0009 #define TRACE_EXPORT_MARKER BIT(2)
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023
0024
0025 struct trace_export {
0026 struct trace_export __rcu *next;
0027 void (*write)(struct trace_export *, const void *, unsigned int);
0028 int flags;
0029 };
0030
0031 int register_ftrace_export(struct trace_export *export);
0032 int unregister_ftrace_export(struct trace_export *export);
0033
0034 struct trace_array;
0035
0036 void trace_printk_init_buffers(void);
0037 __printf(3, 4)
0038 int trace_array_printk(struct trace_array *tr, unsigned long ip,
0039 const char *fmt, ...);
0040 int trace_array_init_printk(struct trace_array *tr);
0041 void trace_array_put(struct trace_array *tr);
0042 struct trace_array *trace_array_get_by_name(const char *name);
0043 int trace_array_destroy(struct trace_array *tr);
0044
0045
0046 int osnoise_arch_register(void);
0047 void osnoise_arch_unregister(void);
0048 void osnoise_trace_irq_entry(int id);
0049 void osnoise_trace_irq_exit(int id, const char *desc);
0050
0051 #endif
0052
0053 #endif