From: John Garry <john.garry@huawei.com>
To: Jiri Olsa <jolsa@redhat.com>
Cc: <peterz@infradead.org>, <mingo@redhat.com>, <acme@kernel.org>,
<mark.rutland@arm.com>, <alexander.shishkin@linux.intel.com>,
<namhyung@kernel.org>, <will@kernel.org>, <ak@linux.intel.com>,
<linuxarm@huawei.com>, <linux-kernel@vger.kernel.org>,
<linux-arm-kernel@lists.infradead.org>, <suzuki.poulose@arm.com>,
<james.clark@arm.com>, <zhangshaokun@hisilicon.com>,
<robin.murphy@arm.com>
Subject: Re: [PATCH RFC 1/7] perf jevents: Add support for an extra directory level
Date: Mon, 10 Feb 2020 15:47:08 +0000 [thread overview]
Message-ID: <8bf65f0c-d4cf-8c69-15b3-961ce4f3cd2f@huawei.com> (raw)
In-Reply-To: <20200210120727.GD1907700@krava>
On 10/02/2020 12:07, Jiri Olsa wrote:
> On Fri, Jan 24, 2020 at 10:34:59PM +0800, John Garry wrote:
>> Currently we support upto a level 2 directory, and level 2 would be in the
>> form vendor/platform.
>>
>> Add support for a further level, to hold specific categories of events for
>> when we want to segregate them for matching purposes.
>>
>> Signed-off-by: John Garry <john.garry@huawei.com>
>> ---
>> tools/perf/pmu-events/jevents.c | 11 ++++++++---
>> 1 file changed, 8 insertions(+), 3 deletions(-)
>>
>> diff --git a/tools/perf/pmu-events/jevents.c b/tools/perf/pmu-events/jevents.c
>> index 079c77b6a2fd..8af05b94a37d 100644
>> --- a/tools/perf/pmu-events/jevents.c
>> +++ b/tools/perf/pmu-events/jevents.c
>> @@ -960,15 +960,20 @@ static int process_one_file(const char *fpath, const struct stat *sb,
>> int level = ftwbuf->level;
>> int err = 0;
>>
>> - if (level == 2 && is_dir) {
>> + if (level >= 2 && is_dir) {
>> + int count = 0;
>> /*
>> * For level 2 directory, bname will include parent name,
>> * like vendor/platform. So search back from platform dir
>> * to find this.
>> + * Something similar for level 3 directory, but we're a PMU
>> + * category folder, like vendor/platform/cpu.
>> */
>> bname = (char *) fpath + ftwbuf->base - 2;
>> for (;;) {
>> if (*bname == '/')
>> + count++;
>> + if (count == level - 1)
>> break;
>> bname--;
>
Hi Jirka,
> I was wondering why we just don't use different filename for that,
> but it's true that the code transforms directory chain to the table
> name.. so I guess another directory level is justified ;-)
Yes, and we need to have separate tables for system and CPU/uncore PMU
aliases.
Thanks,
John
>
> jirka
>
>
>> }
>> @@ -981,13 +986,13 @@ static int process_one_file(const char *fpath, const struct stat *sb,
>> level, sb->st_size, bname, fpath);
>>
>> /* base dir or too deep */
>> - if (level == 0 || level > 3)
>> + if (level == 0 || level > 4)
>> return 0;
>>
>>
>> /* model directory, reset topic */
>> if ((level == 1 && is_dir && is_leaf_dir(fpath)) ||
>> - (level == 2 && is_dir)) {
>> + (level >= 2 && is_dir && is_leaf_dir(fpath))) {
>> if (close_table)
>> print_events_table_suffix(eventsfp);
>>
>> --
>> 2.17.1
>>
>
> .
>
next prev parent reply other threads:[~2020-02-10 15:47 UTC|newest]
Thread overview: 40+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-01-24 14:34 [PATCH RFC 0/7] perf pmu-events: Support event aliasing for system PMUs John Garry
2020-01-24 14:34 ` [PATCH RFC 1/7] perf jevents: Add support for an extra directory level John Garry
2020-02-10 12:07 ` Jiri Olsa
2020-02-10 15:47 ` John Garry [this message]
2020-01-24 14:35 ` [PATCH RFC 2/7] perf vendor events arm64: Relocate hip08 core events John Garry
2020-01-24 14:35 ` [PATCH RFC 3/7] perf jevents: Add support for a system events PMU John Garry
2020-02-10 12:07 ` Jiri Olsa
2020-02-10 12:07 ` Jiri Olsa
2020-02-10 15:55 ` John Garry
2020-02-11 14:46 ` Jiri Olsa
2020-01-24 14:35 ` [PATCH RFC 4/7] perf pmu: Rename uncore symbols to include system PMUs John Garry
2020-02-10 12:07 ` Jiri Olsa
2020-02-10 15:44 ` John Garry
2020-02-11 14:43 ` Jiri Olsa
2020-02-11 15:36 ` John Garry
2020-02-12 12:08 ` Jiri Olsa
2020-01-24 14:35 ` [PATCH RFC 5/7] perf pmu: Support matching by sysid John Garry
2020-02-10 12:07 ` Jiri Olsa
2020-02-10 16:22 ` John Garry
2020-02-11 13:47 ` Jiri Olsa
2020-02-11 15:07 ` John Garry
2020-02-12 10:08 ` John Garry
2020-02-12 12:16 ` Jiri Olsa
2020-02-12 12:24 ` John Garry
2020-01-24 14:35 ` [PATCH RFC 6/7] perf vendor events arm64: Relocate uncore events for hip08 John Garry
2020-01-24 14:35 ` [PATCH RFC 7/7] perf vendor events arm64: Add hip08 SMMUv3 PMCG IMP DEF events John Garry
2020-02-11 15:24 ` [PATCH RFC 0/7] perf pmu-events: Support event aliasing for system PMUs James Clark
2020-02-11 15:41 ` John Garry
2020-02-18 12:57 ` Will Deacon
2020-02-18 13:24 ` John Garry
2020-02-18 13:39 ` Will Deacon
2020-02-18 16:19 ` John Garry
2020-02-18 17:08 ` Mark Rutland
2020-02-18 17:58 ` John Garry
2020-02-18 18:13 ` Mark Rutland
2020-02-19 1:55 ` Joakim Zhang
2020-02-19 8:44 ` John Garry
2020-02-19 12:40 ` Joakim Zhang
2020-02-19 14:28 ` John Garry
2020-02-19 8:50 ` John Garry
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=8bf65f0c-d4cf-8c69-15b3-961ce4f3cd2f@huawei.com \
--to=john.garry@huawei.com \
--cc=acme@kernel.org \
--cc=ak@linux.intel.com \
--cc=alexander.shishkin@linux.intel.com \
--cc=james.clark@arm.com \
--cc=jolsa@redhat.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linuxarm@huawei.com \
--cc=mark.rutland@arm.com \
--cc=mingo@redhat.com \
--cc=namhyung@kernel.org \
--cc=peterz@infradead.org \
--cc=robin.murphy@arm.com \
--cc=suzuki.poulose@arm.com \
--cc=will@kernel.org \
--cc=zhangshaokun@hisilicon.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).