From: Arnaldo Carvalho de Melo <acme@kernel.org>
To: Ingo Molnar <mingo@kernel.org>, Thomas Gleixner <tglx@linutronix.de>
Cc: Jiri Olsa <jolsa@kernel.org>, Namhyung Kim <namhyung@kernel.org>,
Clark Williams <williams@redhat.com>,
linux-kernel@vger.kernel.org, linux-perf-users@vger.kernel.org,
Arnaldo Carvalho de Melo <acme@redhat.com>,
Adrian Hunter <adrian.hunter@intel.com>
Subject: [PATCH 14/31] perf event: Move perf_event__synthesize* to event.h
Date: Fri, 20 Sep 2019 11:25:25 -0300 [thread overview]
Message-ID: <20190920142542.12047-15-acme@kernel.org> (raw)
In-Reply-To: <20190920142542.12047-1-acme@kernel.org>
From: Arnaldo Carvalho de Melo <acme@redhat.com>
Where is the perf_event__handler_t typedef they need, which was the only
reason for header.h to be including event.h, untangle that.
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-outjyzh1o29ndcv9lsqyzt87@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
tools/perf/util/event.h | 36 ++++++++++++++++++++++++++++++++++
| 42 +++-------------------------------------
2 files changed, 39 insertions(+), 39 deletions(-)
diff --git a/tools/perf/util/event.h b/tools/perf/util/event.h
index 47ad81d47b1a..4e6d33c76d57 100644
--- a/tools/perf/util/event.h
+++ b/tools/perf/util/event.h
@@ -279,6 +279,9 @@ enum {
void perf_event__print_totals(void);
+struct evlist;
+struct evsel;
+struct perf_session;
struct perf_tool;
struct perf_thread_map;
struct perf_cpu_map;
@@ -290,6 +293,39 @@ typedef int (*perf_event__handler_t)(struct perf_tool *tool,
struct perf_sample *sample,
struct machine *machine);
+int perf_event__synthesize_attr(struct perf_tool *tool,
+ struct perf_event_attr *attr, u32 ids, u64 *id,
+ perf_event__handler_t process);
+int perf_event__synthesize_attrs(struct perf_tool *tool,
+ struct evlist *evlist,
+ perf_event__handler_t process);
+int perf_event__synthesize_build_id(struct perf_tool *tool,
+ struct dso *pos, u16 misc,
+ perf_event__handler_t process,
+ struct machine *machine);
+int perf_event__synthesize_extra_attr(struct perf_tool *tool,
+ struct evlist *evsel_list,
+ perf_event__handler_t process,
+ bool is_pipe);
+int perf_event__synthesize_event_update_cpus(struct perf_tool *tool,
+ struct evsel *evsel,
+ perf_event__handler_t process);
+int perf_event__synthesize_event_update_name(struct perf_tool *tool,
+ struct evsel *evsel,
+ perf_event__handler_t process);
+int perf_event__synthesize_event_update_scale(struct perf_tool *tool,
+ struct evsel *evsel,
+ perf_event__handler_t process);
+int perf_event__synthesize_event_update_unit(struct perf_tool *tool,
+ struct evsel *evsel,
+ perf_event__handler_t process);
+int perf_event__synthesize_features(struct perf_tool *tool,
+ struct perf_session *session,
+ struct evlist *evlist,
+ perf_event__handler_t process);
+int perf_event__synthesize_tracing_data(struct perf_tool *tool,
+ int fd, struct evlist *evlist,
+ perf_event__handler_t process);
int perf_event__synthesize_thread_map(struct perf_tool *tool,
struct perf_thread_map *threads,
perf_event__handler_t process,
--git a/tools/perf/util/header.h b/tools/perf/util/header.h
index 3e48ae3c49b1..999dac41871e 100644
--- a/tools/perf/util/header.h
+++ b/tools/perf/util/header.h
@@ -5,10 +5,10 @@
#include <linux/stddef.h>
#include <linux/perf_event.h>
#include <sys/types.h>
+#include <stdio.h> // FILE
#include <stdbool.h>
#include <linux/bitmap.h>
#include <linux/types.h>
-#include "event.h"
#include "env.h"
#include "pmu.h"
@@ -94,6 +94,8 @@ struct perf_header {
struct evlist;
struct perf_session;
+struct perf_tool;
+union perf_event;
int perf_session__read_header(struct perf_session *session);
int perf_session__write_header(struct perf_session *session,
@@ -115,54 +117,16 @@ int perf_header__process_sections(struct perf_header *header, int fd,
int perf_header__fprintf_info(struct perf_session *s, FILE *fp, bool full);
-int perf_event__synthesize_features(struct perf_tool *tool,
- struct perf_session *session,
- struct evlist *evlist,
- perf_event__handler_t process);
-
-int perf_event__synthesize_extra_attr(struct perf_tool *tool,
- struct evlist *evsel_list,
- perf_event__handler_t process,
- bool is_pipe);
-
int perf_event__process_feature(struct perf_session *session,
union perf_event *event);
-
-int perf_event__synthesize_attr(struct perf_tool *tool,
- struct perf_event_attr *attr, u32 ids, u64 *id,
- perf_event__handler_t process);
-int perf_event__synthesize_attrs(struct perf_tool *tool,
- struct evlist *evlist,
- perf_event__handler_t process);
-int perf_event__synthesize_event_update_unit(struct perf_tool *tool,
- struct evsel *evsel,
- perf_event__handler_t process);
-int perf_event__synthesize_event_update_scale(struct perf_tool *tool,
- struct evsel *evsel,
- perf_event__handler_t process);
-int perf_event__synthesize_event_update_name(struct perf_tool *tool,
- struct evsel *evsel,
- perf_event__handler_t process);
-int perf_event__synthesize_event_update_cpus(struct perf_tool *tool,
- struct evsel *evsel,
- perf_event__handler_t process);
int perf_event__process_attr(struct perf_tool *tool, union perf_event *event,
struct evlist **pevlist);
int perf_event__process_event_update(struct perf_tool *tool,
union perf_event *event,
struct evlist **pevlist);
size_t perf_event__fprintf_event_update(union perf_event *event, FILE *fp);
-
-int perf_event__synthesize_tracing_data(struct perf_tool *tool,
- int fd, struct evlist *evlist,
- perf_event__handler_t process);
int perf_event__process_tracing_data(struct perf_session *session,
union perf_event *event);
-
-int perf_event__synthesize_build_id(struct perf_tool *tool,
- struct dso *pos, u16 misc,
- perf_event__handler_t process,
- struct machine *machine);
int perf_event__process_build_id(struct perf_session *session,
union perf_event *event);
bool is_perf_magic(u64 magic);
--
2.21.0
next prev parent reply other threads:[~2019-09-20 14:27 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-09-20 14:25 [GIT PULL] perf/core improvements and fixes Arnaldo Carvalho de Melo
2019-09-20 14:25 ` [PATCH 01/31] perf python: Add missing python/perf.so dependency for libperf Arnaldo Carvalho de Melo
2019-09-20 14:25 ` [PATCH 02/31] perf tests: Add libperf automated test for 'make -C tools/perf build-test' Arnaldo Carvalho de Melo
2019-09-20 14:25 ` [PATCH 03/31] libperf: Add missing event.h file to install rule Arnaldo Carvalho de Melo
2019-09-20 14:25 ` [PATCH 04/31] libperf: Adopt perf_cpu_map__max() function Arnaldo Carvalho de Melo
2019-09-20 14:25 ` [PATCH 05/31] perf jvmti: Link against tools/lib/string.o to have weak strlcpy() Arnaldo Carvalho de Melo
2019-09-20 14:25 ` [PATCH 06/31] perf tools: Add PMU event JSON files for ARM Cortex-A76 and, Neoverse N1 Arnaldo Carvalho de Melo
2019-09-20 14:25 ` [PATCH 07/31] perf tools: Remove needless builtin.h include directives Arnaldo Carvalho de Melo
2019-09-20 14:25 ` [PATCH 08/31] perf debug: No need to include ui/util.h Arnaldo Carvalho de Melo
2019-09-20 14:25 ` [PATCH 09/31] perf tools: Remove debug.h from places where it is not needed Arnaldo Carvalho de Melo
2019-09-20 14:25 ` [PATCH 10/31] perf tools: Remove util.h from " Arnaldo Carvalho de Melo
2019-09-20 14:25 ` [PATCH 11/31] perf probe: Add missing build-id.h header Arnaldo Carvalho de Melo
2019-09-20 14:25 ` [PATCH 12/31] perf symbols: Add missing dso.h header Arnaldo Carvalho de Melo
2019-09-20 14:25 ` [PATCH 13/31] perf env: Remove needless cpumap.h header Arnaldo Carvalho de Melo
2019-09-20 14:25 ` Arnaldo Carvalho de Melo [this message]
2019-09-20 14:25 ` [PATCH 15/31] perf stat: Move perf_stat_synthesize_config() to event.h Arnaldo Carvalho de Melo
2019-09-20 14:25 ` [PATCH 16/31] perf callchain: Remove needless event.h include Arnaldo Carvalho de Melo
2019-09-20 14:25 ` [PATCH 17/31] perf python: Remove debug.h Arnaldo Carvalho de Melo
2019-09-20 14:25 ` [PATCH 18/31] perf hist: Add missing 'struct branch_stack' forward declaration Arnaldo Carvalho de Melo
2019-09-20 14:25 ` [PATCH 19/31] perf annotate: Add missing machine.h include directive Arnaldo Carvalho de Melo
2019-09-20 14:25 ` [PATCH 20/31] perf sched: Add missing event.h " Arnaldo Carvalho de Melo
2019-09-20 14:25 ` [PATCH 21/31] perf auxtrace: Add missing 'struct perf_sample' forward declaration Arnaldo Carvalho de Melo
2019-09-20 14:25 ` [PATCH 22/31] perf tools: Move event synthesizing routines to separate header Arnaldo Carvalho de Melo
2019-09-20 14:25 ` [PATCH 23/31] perf memswap: Adopt 'struct u64_swap' from evsel.h Arnaldo Carvalho de Melo
2019-09-20 14:25 ` [PATCH 24/31] perf tools: Move event synthesizing routines to separate .c file Arnaldo Carvalho de Melo
2019-09-20 14:25 ` [PATCH 25/31] tools lib traceevent: Convert remaining %p[fF] users to %p[sS] Arnaldo Carvalho de Melo
2019-09-20 14:25 ` [PATCH 26/31] perf stat: Reset previous counts on repeat with interval Arnaldo Carvalho de Melo
2019-09-20 14:25 ` [PATCH 27/31] perf stat: Fix a segmentation fault when using repeat forever Arnaldo Carvalho de Melo
2019-09-20 14:25 ` [PATCH 28/31] perf test: Fix spelling mistake "allos" -> "allocate" Arnaldo Carvalho de Melo
2019-09-20 14:25 ` [PATCH 29/31] perf kvm: Move kvm-stat header file from conditional inclusion to common include section Arnaldo Carvalho de Melo
2019-09-20 14:25 ` [PATCH 30/31] perf kvm: Add arch neutral function to choose event for perf kvm record Arnaldo Carvalho de Melo
2019-09-20 14:25 ` [PATCH 31/31] perf kvm stat: Set 'trace_cycles' as default event for 'perf kvm record' in powerpc Arnaldo Carvalho de Melo
2019-09-20 16:15 ` [GIT PULL] perf/core improvements and fixes Ingo Molnar
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190920142542.12047-15-acme@kernel.org \
--to=acme@kernel.org \
--cc=acme@redhat.com \
--cc=adrian.hunter@intel.com \
--cc=jolsa@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-perf-users@vger.kernel.org \
--cc=mingo@kernel.org \
--cc=namhyung@kernel.org \
--cc=tglx@linutronix.de \
--cc=williams@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).