diff options
author | Arnaldo Carvalho de Melo <acme@redhat.com> | 2019-08-30 20:45:20 +0300 |
---|---|---|
committer | Arnaldo Carvalho de Melo <acme@redhat.com> | 2019-09-01 04:24:10 +0300 |
commit | f2a39fe84901df2b3d1bec3459b65cee3e8db57c (patch) | |
tree | 399cb01cdf9a8c771e734ed4344a18840845f9bf /tools/perf/util | |
parent | fa0d98462fae5d4951f22f3ac1090d48c53396d1 (diff) | |
download | linux-f2a39fe84901df2b3d1bec3459b65cee3e8db57c.tar.xz |
perf auxtrace: Uninline functions that touch perf_session
So that we don't carry the session.h include directive in auxtrace.h,
which in turn opens a can of worms of files that were getting all sorts
of things via that include, fix them all.
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Namhyung Kim <namhyung@kernel.org>
Link: https://lkml.kernel.org/n/tip-d2d83aovpgri2z75wlitquni@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf/util')
-rw-r--r-- | tools/perf/util/annotate.c | 3 | ||||
-rw-r--r-- | tools/perf/util/auxtrace.c | 33 | ||||
-rw-r--r-- | tools/perf/util/auxtrace.h | 43 | ||||
-rw-r--r-- | tools/perf/util/bpf-loader.c | 1 | ||||
-rw-r--r-- | tools/perf/util/cgroup.c | 2 | ||||
-rw-r--r-- | tools/perf/util/config.c | 1 | ||||
-rw-r--r-- | tools/perf/util/cs-etm.c | 1 | ||||
-rw-r--r-- | tools/perf/util/cs-etm.h | 3 | ||||
-rw-r--r-- | tools/perf/util/dso.c | 2 | ||||
-rw-r--r-- | tools/perf/util/evlist.c | 1 | ||||
-rw-r--r-- | tools/perf/util/evsel.c | 1 | ||||
-rw-r--r-- | tools/perf/util/machine.c | 2 | ||||
-rw-r--r-- | tools/perf/util/mmap.c | 3 | ||||
-rw-r--r-- | tools/perf/util/mmap.h | 1 | ||||
-rw-r--r-- | tools/perf/util/python.c | 2 | ||||
-rw-r--r-- | tools/perf/util/record.c | 2 | ||||
-rw-r--r-- | tools/perf/util/s390-sample-raw.c | 1 | ||||
-rw-r--r-- | tools/perf/util/sort.c | 1 | ||||
-rw-r--r-- | tools/perf/util/stat-display.c | 1 | ||||
-rw-r--r-- | tools/perf/util/stat.c | 3 | ||||
-rw-r--r-- | tools/perf/util/top.h | 1 |
21 files changed, 70 insertions, 38 deletions
diff --git a/tools/perf/util/annotate.c b/tools/perf/util/annotate.c index eb3c50de831d..1748f528b6e9 100644 --- a/tools/perf/util/annotate.c +++ b/tools/perf/util/annotate.c @@ -9,6 +9,7 @@ #include <errno.h> #include <inttypes.h> #include <libgen.h> +#include <stdlib.h> #include <bpf/bpf.h> #include <bpf/btf.h> #include <bpf/libbpf.h> @@ -20,7 +21,9 @@ #include "color.h" #include "config.h" #include "dso.h" +#include "env.h" #include "map.h" +#include "map_groups.h" #include "symbol.h" #include "srcline.h" #include "units.h" diff --git a/tools/perf/util/auxtrace.c b/tools/perf/util/auxtrace.c index 10c707724035..6f25224a3def 100644 --- a/tools/perf/util/auxtrace.c +++ b/tools/perf/util/auxtrace.c @@ -2196,3 +2196,36 @@ int auxtrace_parse_filters(struct evlist *evlist) return 0; } + +int auxtrace__process_event(struct perf_session *session, union perf_event *event, + struct perf_sample *sample, struct perf_tool *tool) +{ + if (!session->auxtrace) + return 0; + + return session->auxtrace->process_event(session, event, sample, tool); +} + +int auxtrace__flush_events(struct perf_session *session, struct perf_tool *tool) +{ + if (!session->auxtrace) + return 0; + + return session->auxtrace->flush_events(session, tool); +} + +void auxtrace__free_events(struct perf_session *session) +{ + if (!session->auxtrace) + return; + + return session->auxtrace->free_events(session); +} + +void auxtrace__free(struct perf_session *session) +{ + if (!session->auxtrace) + return; + + return session->auxtrace->free(session); +} diff --git a/tools/perf/util/auxtrace.h b/tools/perf/util/auxtrace.h index c539e7b6ed56..37e70dc01436 100644 --- a/tools/perf/util/auxtrace.h +++ b/tools/perf/util/auxtrace.h @@ -18,7 +18,6 @@ #include <asm/barrier.h> #include "event.h" -#include "session.h" union perf_event; struct perf_session; @@ -380,6 +379,8 @@ struct addr_filters { int cnt; }; +struct auxtrace_cache; + #ifdef HAVE_AUXTRACE_SUPPORT /* @@ -549,41 +550,11 @@ int addr_filters__parse_bare_filter(struct addr_filters *filts, const char *filter); int auxtrace_parse_filters(struct evlist *evlist); -static inline int auxtrace__process_event(struct perf_session *session, - union perf_event *event, - struct perf_sample *sample, - struct perf_tool *tool) -{ - if (!session->auxtrace) - return 0; - - return session->auxtrace->process_event(session, event, sample, tool); -} - -static inline int auxtrace__flush_events(struct perf_session *session, - struct perf_tool *tool) -{ - if (!session->auxtrace) - return 0; - - return session->auxtrace->flush_events(session, tool); -} - -static inline void auxtrace__free_events(struct perf_session *session) -{ - if (!session->auxtrace) - return; - - return session->auxtrace->free_events(session); -} - -static inline void auxtrace__free(struct perf_session *session) -{ - if (!session->auxtrace) - return; - - return session->auxtrace->free(session); -} +int auxtrace__process_event(struct perf_session *session, union perf_event *event, + struct perf_sample *sample, struct perf_tool *tool); +int auxtrace__flush_events(struct perf_session *session, struct perf_tool *tool); +void auxtrace__free_events(struct perf_session *session); +void auxtrace__free(struct perf_session *session); #define ITRACE_HELP \ " i: synthesize instructions events\n" \ diff --git a/tools/perf/util/bpf-loader.c b/tools/perf/util/bpf-loader.c index c1a57323e25d..37283e865352 100644 --- a/tools/perf/util/bpf-loader.c +++ b/tools/perf/util/bpf-loader.c @@ -14,6 +14,7 @@ #include <linux/string.h> #include <linux/zalloc.h> #include <errno.h> +#include <stdlib.h> #include "debug.h" #include "evlist.h" #include "bpf-loader.h" diff --git a/tools/perf/util/cgroup.c b/tools/perf/util/cgroup.c index 96a931c6f728..4881d4af3381 100644 --- a/tools/perf/util/cgroup.c +++ b/tools/perf/util/cgroup.c @@ -8,6 +8,8 @@ #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> +#include <stdlib.h> +#include <string.h> int nr_cgroups; diff --git a/tools/perf/util/config.c b/tools/perf/util/config.c index 7ebf9e31ae22..0bc9c4d7fdc5 100644 --- a/tools/perf/util/config.c +++ b/tools/perf/util/config.c @@ -23,6 +23,7 @@ #include "debug.h" #include <sys/types.h> #include <sys/stat.h> +#include <stdlib.h> #include <unistd.h> #include <linux/string.h> #include <linux/zalloc.h> diff --git a/tools/perf/util/cs-etm.c b/tools/perf/util/cs-etm.c index 30c2048ce67d..0174ecf757d7 100644 --- a/tools/perf/util/cs-etm.c +++ b/tools/perf/util/cs-etm.c @@ -27,6 +27,7 @@ #include "machine.h" #include "map.h" #include "perf.h" +#include "session.h" #include "symbol.h" #include "tool.h" #include "thread.h" diff --git a/tools/perf/util/cs-etm.h b/tools/perf/util/cs-etm.h index bc848fd095f4..650ecc2a6349 100644 --- a/tools/perf/util/cs-etm.h +++ b/tools/perf/util/cs-etm.h @@ -8,9 +8,10 @@ #define INCLUDE__UTIL_PERF_CS_ETM_H__ #include "util/event.h" -#include "util/session.h" #include <linux/bits.h> +struct perf_session; + /* Versionning header in case things need tro change in the future. That way * decoding of old snapshot is still possible. */ diff --git a/tools/perf/util/dso.c b/tools/perf/util/dso.c index ece97209792d..e11ddf86f2b3 100644 --- a/tools/perf/util/dso.c +++ b/tools/perf/util/dso.c @@ -10,9 +10,11 @@ #include <unistd.h> #include <errno.h> #include <fcntl.h> +#include <stdlib.h> #include <bpf/libbpf.h> #include "bpf-event.h" #include "compress.h" +#include "env.h" #include "namespaces.h" #include "path.h" #include "map.h" diff --git a/tools/perf/util/evlist.c b/tools/perf/util/evlist.c index b5d6d6ec9a9b..095924aa186b 100644 --- a/tools/perf/util/evlist.c +++ b/tools/perf/util/evlist.c @@ -23,6 +23,7 @@ #include <signal.h> #include <unistd.h> #include <sched.h> +#include <stdlib.h> #include "parse-events.h" #include <subcmd/parse-options.h> diff --git a/tools/perf/util/evsel.c b/tools/perf/util/evsel.c index b6b406a1678f..85825384f9e8 100644 --- a/tools/perf/util/evsel.c +++ b/tools/perf/util/evsel.c @@ -22,6 +22,7 @@ #include <sys/resource.h> #include <sys/types.h> #include <dirent.h> +#include <stdlib.h> #include <perf/evsel.h> #include "asm/bug.h" #include "callchain.h" diff --git a/tools/perf/util/machine.c b/tools/perf/util/machine.c index 003025465198..6a77aefbe319 100644 --- a/tools/perf/util/machine.c +++ b/tools/perf/util/machine.c @@ -3,9 +3,11 @@ #include <errno.h> #include <inttypes.h> #include <regex.h> +#include <stdlib.h> #include "callchain.h" #include "debug.h" #include "dso.h" +#include "env.h" #include "event.h" #include "evsel.h" #include "hist.h" diff --git a/tools/perf/util/mmap.c b/tools/perf/util/mmap.c index 28477ff5114e..33c5b5495482 100644 --- a/tools/perf/util/mmap.c +++ b/tools/perf/util/mmap.c @@ -10,9 +10,12 @@ #include <inttypes.h> #include <asm/bug.h> #include <linux/zalloc.h> +#include <stdlib.h> +#include <string.h> #ifdef HAVE_LIBNUMA_SUPPORT #include <numaif.h> #endif +#include "cpumap.h" #include "debug.h" #include "event.h" #include "mmap.h" diff --git a/tools/perf/util/mmap.h b/tools/perf/util/mmap.h index 274ce389cd84..3857a49e8f96 100644 --- a/tools/perf/util/mmap.h +++ b/tools/perf/util/mmap.h @@ -6,6 +6,7 @@ #include <linux/types.h> #include <linux/ring_buffer.h> #include <stdbool.h> +#include <pthread.h> // for cpu_set_t #ifdef HAVE_AIO_SUPPORT #include <aio.h> #endif diff --git a/tools/perf/util/python.c b/tools/perf/util/python.c index 9b350482c403..07ca4535e6f7 100644 --- a/tools/perf/util/python.c +++ b/tools/perf/util/python.c @@ -5,6 +5,7 @@ #include <poll.h> #include <linux/err.h> #include <perf/cpumap.h> +#include <traceevent/event-parse.h> #include "debug.h" #include "evlist.h" #include "callchain.h" @@ -13,6 +14,7 @@ #include "cpumap.h" #include "print_binary.h" #include "thread_map.h" +#include "trace-event.h" #include "mmap.h" #include "util.h" #include "../perf-sys.h" diff --git a/tools/perf/util/record.c b/tools/perf/util/record.c index ccad796bce5f..286fe816c0f3 100644 --- a/tools/perf/util/record.c +++ b/tools/perf/util/record.c @@ -5,6 +5,8 @@ #include "cpumap.h" #include "parse-events.h" #include <errno.h> +#include <limits.h> +#include <stdlib.h> #include <api/fs/fs.h> #include <subcmd/parse-options.h> #include <perf/cpumap.h> diff --git a/tools/perf/util/s390-sample-raw.c b/tools/perf/util/s390-sample-raw.c index d311c81464e5..0ddfa7b3e4f2 100644 --- a/tools/perf/util/s390-sample-raw.c +++ b/tools/perf/util/s390-sample-raw.c @@ -23,7 +23,6 @@ #include "debug.h" #include "util.h" -#include "auxtrace.h" #include "session.h" #include "evlist.h" #include "config.h" diff --git a/tools/perf/util/sort.c b/tools/perf/util/sort.c index 32ade5a1b553..b974a2c3a3c5 100644 --- a/tools/perf/util/sort.c +++ b/tools/perf/util/sort.c @@ -2,6 +2,7 @@ #include <errno.h> #include <inttypes.h> #include <regex.h> +#include <stdlib.h> #include <linux/mman.h> #include <linux/time64.h> #include "debug.h" diff --git a/tools/perf/util/stat-display.c b/tools/perf/util/stat-display.c index 1461dac2322d..ed3b0ac2f785 100644 --- a/tools/perf/util/stat-display.c +++ b/tools/perf/util/stat-display.c @@ -1,3 +1,4 @@ +#include <stdlib.h> #include <stdio.h> #include <inttypes.h> #include <linux/string.h> diff --git a/tools/perf/util/stat.c b/tools/perf/util/stat.c index f4a1edcec7b2..8f1ea27f976f 100644 --- a/tools/perf/util/stat.c +++ b/tools/perf/util/stat.c @@ -2,9 +2,12 @@ #include <errno.h> #include <inttypes.h> #include <math.h> +#include <string.h> #include "counts.h" #include "debug.h" +#include "header.h" #include "stat.h" +#include "session.h" #include "target.h" #include "evlist.h" #include "evsel.h" diff --git a/tools/perf/util/top.h b/tools/perf/util/top.h index 7367433e767a..f117d4f4821e 100644 --- a/tools/perf/util/top.h +++ b/tools/perf/util/top.h @@ -5,6 +5,7 @@ #include "tool.h" #include "evswitch.h" #include "annotate.h" +#include "ordered-events.h" #include "record.h" #include <linux/types.h> #include <stddef.h> |