From: Jiri Olsa <jolsa@redhat.com>
To: David Carrillo-Cisneros <davidcc@google.com>
Cc: linux-kernel@vger.kernel.org,
Peter Zijlstra <peterz@infradead.org>,
Ingo Molnar <mingo@redhat.com>,
Arnaldo Carvalho de Melo <acme@kernel.org>,
Alexander Shishkin <alexander.shishkin@linux.intel.com>,
Andi Kleen <ak@linux.intel.com>, Simon Que <sque@chromium.org>,
Wang Nan <wangnan0@huawei.com>, Jiri Olsa <jolsa@kernel.org>,
He Kuang <hekuang@huawei.com>,
Masami Hiramatsu <mhiramat@kernel.org>,
David Ahern <dsa@cumulusnetworks.com>,
Namhyung Kim <namhyung@kernel.org>,
Stephane Eranian <eranian@google.com>,
Paul Turner <pjt@google.com>
Subject: Re: [PATCH 7/7] perf tools: add feature header record to pipe-mode
Date: Thu, 18 May 2017 18:13:17 +0200 [thread overview]
Message-ID: <20170518161317.GC17926@krava> (raw)
In-Reply-To: <20170518041602.28689-8-davidcc@google.com>
On Wed, May 17, 2017 at 09:16:02PM -0700, David Carrillo-Cisneros wrote:
SNIP
> static const char *perf_ns__names[] = {
> diff --git a/tools/perf/util/event.h b/tools/perf/util/event.h
> index db2de6413518..d404f50260f8 100644
> --- a/tools/perf/util/event.h
> +++ b/tools/perf/util/event.h
> @@ -244,6 +244,19 @@ enum perf_user_event_type { /* above any possible kernel type */
> PERF_RECORD_STAT_ROUND = 77,
> PERF_RECORD_EVENT_UPDATE = 78,
> PERF_RECORD_TIME_CONV = 79,
> + PERF_RECORD_HEADER_HOSTNAME = 80,
> + PERF_RECORD_HEADER_OSRELEASE = 81,
> + PERF_RECORD_HEADER_VERSION = 82,
> + PERF_RECORD_HEADER_ARCH = 83,
> + PERF_RECORD_HEADER_NRCPUS = 84,
> + PERF_RECORD_HEADER_CPUDESC = 85,
> + PERF_RECORD_HEADER_CPUID = 86,
> + PERF_RECORD_HEADER_TOTAL_MEM = 87,
> + PERF_RECORD_HEADER_CMDLINE = 88,
> + PERF_RECORD_HEADER_EVENT_DESC = 89,
> + PERF_RECORD_HEADER_CPU_TOPOLOGY = 90,
> + PERF_RECORD_HEADER_NUMA_TOPOLOGY = 91,
> + PERF_RECORD_HEADER_PMU_MAPPINGS = 92,
> PERF_RECORD_HEADER_MAX
> };
SNIP
> +
> +/*
> + * we use a mapping table to go from record type to feature header
> + * because we have no guarantee that new record types may not be added
> + * after the feature header.
> + */
> +#define REC2FEAT(a) [PERF_RECORD_HEADER_##a] = HEADER_##a
> +
> +static const int rec2feat[PERF_RECORD_HEADER_MAX] = {
> + REC2FEAT(HOSTNAME),
> + REC2FEAT(OSRELEASE),
> + REC2FEAT(VERSION),
> + REC2FEAT(ARCH),
> + REC2FEAT(NRCPUS),
> + REC2FEAT(CPUDESC),
> + REC2FEAT(CPUID),
> + REC2FEAT(TOTAL_MEM),
> + REC2FEAT(EVENT_DESC),
> + REC2FEAT(CMDLINE),
> + REC2FEAT(CPU_TOPOLOGY),
> + REC2FEAT(NUMA_TOPOLOGY),
> + REC2FEAT(PMU_MAPPINGS),
> };
hum, how about instead of adding all those new events we add
just one: PERF_RECORD_FEATURE, which would carry the id of the
feature, like:
struct feature_event {
struct perf_event_header header;
u64 id;
char data[]; /* size bytes of raw data specific to the feature */
};
this way we could also omit the reverse event to feature map
thanks,
jirka
next prev parent reply other threads:[~2017-05-18 16:13 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-05-18 4:15 [PATCH 0/7] perf tool: add meta-data header support for pipe-mode David Carrillo-Cisneros
2017-05-18 4:15 ` [PATCH 1/7] perf header: fail on write_padded error David Carrillo-Cisneros
2017-05-18 4:15 ` [PATCH 2/7] perf util: add const modifier to buf in "writen" function David Carrillo-Cisneros
2017-05-18 4:15 ` [PATCH 3/7] perf header: use struct feat_fd for write David Carrillo-Cisneros
2017-05-18 16:13 ` Jiri Olsa
2017-05-18 18:02 ` David Carrillo-Cisneros
2017-05-18 4:15 ` [PATCH 4/7] perf header: use struct feat_fd for print David Carrillo-Cisneros
2017-05-18 4:16 ` [PATCH 5/7] perf header: use struct feat_fd for process and read David Carrillo-Cisneros
2017-05-18 16:13 ` Jiri Olsa
2017-05-18 18:02 ` David Carrillo-Cisneros
2017-05-18 4:16 ` [PATCH 6/7] perf tool: make show-info in perf report a tool attribute David Carrillo-Cisneros
2017-05-18 4:16 ` [PATCH 7/7] perf tools: add feature header record to pipe-mode David Carrillo-Cisneros
2017-05-18 16:12 ` Jiri Olsa
2017-05-18 18:30 ` David Carrillo-Cisneros
2017-05-18 16:13 ` Jiri Olsa
2017-05-18 16:13 ` Jiri Olsa [this message]
2017-05-18 18:29 ` David Carrillo-Cisneros
2017-05-18 16:13 ` Jiri Olsa
2017-05-18 16:13 ` Jiri Olsa
2017-05-18 18:29 ` David Carrillo-Cisneros
2017-05-18 5:10 ` [PATCH 0/7] perf tool: add meta-data header support for pipe-mode Andi Kleen
2017-05-18 18:02 ` David Carrillo-Cisneros
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=20170518161317.GC17926@krava \
--to=jolsa@redhat.com \
--cc=acme@kernel.org \
--cc=ak@linux.intel.com \
--cc=alexander.shishkin@linux.intel.com \
--cc=davidcc@google.com \
--cc=dsa@cumulusnetworks.com \
--cc=eranian@google.com \
--cc=hekuang@huawei.com \
--cc=jolsa@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mhiramat@kernel.org \
--cc=mingo@redhat.com \
--cc=namhyung@kernel.org \
--cc=peterz@infradead.org \
--cc=pjt@google.com \
--cc=sque@chromium.org \
--cc=wangnan0@huawei.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.