kernel/tools/perf/util/trace.h

39 lines
887 B
C

/* SPDX-License-Identifier: GPL-2.0 */
#ifndef UTIL_TRACE_H
#define UTIL_TRACE_H
#include <stdio.h> /* for FILE */
enum trace_summary_mode {
SUMMARY__NONE = 0,
SUMMARY__BY_TOTAL,
SUMMARY__BY_THREAD,
SUMMARY__BY_CGROUP,
};
#ifdef HAVE_BPF_SKEL
int trace_prepare_bpf_summary(enum trace_summary_mode mode);
void trace_start_bpf_summary(void);
void trace_end_bpf_summary(void);
int trace_print_bpf_summary(FILE *fp);
void trace_cleanup_bpf_summary(void);
#else /* !HAVE_BPF_SKEL */
static inline int trace_prepare_bpf_summary(enum trace_summary_mode mode __maybe_unused)
{
return -1;
}
static inline void trace_start_bpf_summary(void) {}
static inline void trace_end_bpf_summary(void) {}
static inline int trace_print_bpf_summary(FILE *fp __maybe_unused)
{
return 0;
}
static inline void trace_cleanup_bpf_summary(void) {}
#endif /* HAVE_BPF_SKEL */
#endif /* UTIL_TRACE_H */