Author | Tokens | Token Proportion | Commits | Commit Proportion |
---|---|---|---|---|
Adrian Hunter | 475 | 100.00% | 5 | 100.00% |
Total | 475 | 5 |
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
/* SPDX-License-Identifier: GPL-2.0 */ /* * dlfilter.h: Interface to perf script --dlfilter shared object * Copyright (c) 2021, Intel Corporation. */ #ifndef PERF_UTIL_DLFILTER_H #define PERF_UTIL_DLFILTER_H struct perf_session; union perf_event; struct perf_sample; struct evsel; struct machine; struct addr_location; struct perf_dlfilter_fns; struct perf_dlfilter_sample; struct perf_dlfilter_al; struct dlfilter { char *file; void *handle; void *data; struct perf_session *session; bool ctx_valid; bool in_start; bool in_stop; int dlargc; char **dlargv; union perf_event *event; struct perf_sample *sample; struct evsel *evsel; struct machine *machine; struct addr_location *al; struct addr_location *addr_al; struct perf_dlfilter_sample *d_sample; struct perf_dlfilter_al *d_ip_al; struct perf_dlfilter_al *d_addr_al; int (*start)(void **data, void *ctx); int (*stop)(void *data, void *ctx); int (*filter_event)(void *data, const struct perf_dlfilter_sample *sample, void *ctx); int (*filter_event_early)(void *data, const struct perf_dlfilter_sample *sample, void *ctx); struct perf_dlfilter_fns *fns; }; struct dlfilter *dlfilter__new(const char *file, int dlargc, char **dlargv); int dlfilter__start(struct dlfilter *d, struct perf_session *session); int dlfilter__do_filter_event(struct dlfilter *d, union perf_event *event, struct perf_sample *sample, struct evsel *evsel, struct machine *machine, struct addr_location *al, struct addr_location *addr_al, bool early); void dlfilter__cleanup(struct dlfilter *d); static inline int dlfilter__filter_event(struct dlfilter *d, union perf_event *event, struct perf_sample *sample, struct evsel *evsel, struct machine *machine, struct addr_location *al, struct addr_location *addr_al) { if (!d || !d->filter_event) return 0; return dlfilter__do_filter_event(d, event, sample, evsel, machine, al, addr_al, false); } static inline int dlfilter__filter_event_early(struct dlfilter *d, union perf_event *event, struct perf_sample *sample, struct evsel *evsel, struct machine *machine, struct addr_location *al, struct addr_location *addr_al) { if (!d || !d->filter_event_early) return 0; return dlfilter__do_filter_event(d, event, sample, evsel, machine, al, addr_al, true); } int list_available_dlfilters(const struct option *opt, const char *s, int unset); bool get_filter_desc(const char *dirname, const char *name, char **desc, char **long_desc); #endif
Information contained on this website is for historical information purposes only and does not indicate or represent copyright ownership.
Created with Cregit http://github.com/cregit/cregit
Version 2.0-RC1