linux/tools/perf/util/bpf-event.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0 */
   2#ifndef __PERF_BPF_EVENT_H
   3#define __PERF_BPF_EVENT_H
   4
   5#include <linux/compiler.h>
   6#include <linux/rbtree.h>
   7#include <pthread.h>
   8#include <api/fd/array.h>
   9#include <stdio.h>
  10
  11struct bpf_prog_info;
  12struct machine;
  13union perf_event;
  14struct perf_env;
  15struct perf_sample;
  16struct perf_session;
  17struct record_opts;
  18struct evlist;
  19struct target;
  20
  21struct bpf_prog_info_node {
  22        struct bpf_prog_info_linear     *info_linear;
  23        struct rb_node                  rb_node;
  24};
  25
  26struct btf_node {
  27        struct rb_node  rb_node;
  28        u32             id;
  29        u32             data_size;
  30        char            data[];
  31};
  32
  33#ifdef HAVE_LIBBPF_SUPPORT
  34int machine__process_bpf(struct machine *machine, union perf_event *event,
  35                         struct perf_sample *sample);
  36int evlist__add_bpf_sb_event(struct evlist *evlist, struct perf_env *env);
  37void bpf_event__print_bpf_prog_info(struct bpf_prog_info *info,
  38                                    struct perf_env *env,
  39                                    FILE *fp);
  40#else
  41static inline int machine__process_bpf(struct machine *machine __maybe_unused,
  42                                       union perf_event *event __maybe_unused,
  43                                       struct perf_sample *sample __maybe_unused)
  44{
  45        return 0;
  46}
  47
  48static inline int evlist__add_bpf_sb_event(struct evlist *evlist __maybe_unused,
  49                                           struct perf_env *env __maybe_unused)
  50{
  51        return 0;
  52}
  53
  54static inline void bpf_event__print_bpf_prog_info(struct bpf_prog_info *info __maybe_unused,
  55                                                  struct perf_env *env __maybe_unused,
  56                                                  FILE *fp __maybe_unused)
  57{
  58
  59}
  60#endif // HAVE_LIBBPF_SUPPORT
  61#endif
  62