mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-19 15:47:05 +07:00
29 lines
902 B
C
29 lines
902 B
C
|
#ifndef _LINUX_TRACE_H
|
||
|
#define _LINUX_TRACE_H
|
||
|
|
||
|
#ifdef CONFIG_TRACING
|
||
|
/*
|
||
|
* The trace export - an export of Ftrace output. The trace_export
|
||
|
* can process traces and export them to a registered destination as
|
||
|
* an addition to the current only output of Ftrace - i.e. ring buffer.
|
||
|
*
|
||
|
* If you want traces to be sent to some other place rather than ring
|
||
|
* buffer only, just need to register a new trace_export and implement
|
||
|
* its own .write() function for writing traces to the storage.
|
||
|
*
|
||
|
* next - pointer to the next trace_export
|
||
|
* write - copy traces which have been delt with ->commit() to
|
||
|
* the destination
|
||
|
*/
|
||
|
struct trace_export {
|
||
|
struct trace_export __rcu *next;
|
||
|
void (*write)(const void *, unsigned int);
|
||
|
};
|
||
|
|
||
|
int register_ftrace_export(struct trace_export *export);
|
||
|
int unregister_ftrace_export(struct trace_export *export);
|
||
|
|
||
|
#endif /* CONFIG_TRACING */
|
||
|
|
||
|
#endif /* _LINUX_TRACE_H */
|