From: Arnaldo Carvalho de Melo <acme@kernel.org>
To: Sukadev Bhattiprolu <sukadev@linux.vnet.ibm.com>
Cc: john.garry@huawei.com, linux-kernel@vger.kernel.org,
Michael Ellerman <mpe@ellerman.id.au>
Subject: Re: perf-core build fails on powerpc
Date: Tue, 13 Mar 2018 22:52:34 -0300 [thread overview]
Message-ID: <20180314015234.GA19781@kernel.org> (raw)
In-Reply-To: <20180313191742.GA29120@us.ibm.com>
Em Tue, Mar 13, 2018 at 12:17:42PM -0700, Sukadev Bhattiprolu escreveu:
>
>
> Building perf on Powerpc seems broken when using Arnaldo's perf/core branch
> with HEAD as:
>
> 1b442ed ("perf test: Fix exit code for record+probe_libc_inet_pton.sh")
>
> It maybe related to this commit:
Humpf, this should've been caught by one of the powerpc crossbuild
containers I have in place... will check why the jevents.c code is not
being stressed...
- Arnaldo
> commit d596299
> Author: John Garry <john.garry@huawei.com>
> Date: Thu Mar 8 18:58:29 2018 +0800
>
> perf vendor events: Add support for pmu events vendor subdirectory
>
> Reverting this hunk from tools/perf/pmu-events/jevents.c, seems to fix the
> problem for me.
>
> @@ -957,8 +963,12 @@ static int process_one_file(const char *fpath, const struct
>
>
> /* model directory, reset topic */
> +#if 0
> if ((level == 1 && is_dir && is_leaf_dir(fpath)) ||
> (level == 2 && is_dir)) {
> +#else
> + if (level == 1 && is_dir) {
> +#endif
>
>
> The problem is that the tools/perf/pmu-events/pmu-events.c file generated by
> the jevents program is missing the "prefix" lines like:
>
> struct pmu_event pme_power8[] = {
> and
> struct pmu_event pme_power9[] = {
>
>
> i.e the pmu-events.c begins like:
> ---
>
> #include "../../pmu-events/pmu-events.h"
> {
> .name = "pm_data_from_dl2l3_mod",
> .event = "event=0x4c048",
> .desc = "The processor's data cache was reloaded with Modified (M) data from another chip's L2 or L3 on a different Node or Group (Distant), as this chip due to a demand load",
> .topic = "cache",
> .long_desc = "The processor's data cache was reloaded with Modified (M) data from another chip's L2 or L3 on a different Node or Group (Distant), as this chip due to either only demand loads or demand loads plus prefetches if MMCR1[16] is 1",
> },
>
> ---
>
> Below is the debug and info messages at the time of failure:
>
> ---
>
> HOSTCC /home/suka/linux-acme.git/tools/perf/perf-obj/pmu-events/jevents.o
> HOSTLD /home/suka/linux-acme.git/tools/perf/perf-obj/pmu-events/jevents-in.o
> LINK /home/suka/linux-acme.git/tools/perf/perf-obj/pmu-events/jevents
> GEN /home/suka/linux-acme.git/tools/perf/perf-obj/pmu-events/pmu-events.c
> d 0 50 powerpc pmu-events/arch/powerpc
> d 1 4096 power8 pmu-events/arch/powerpc/power8
> f 2 10275 cache.json pmu-events/arch/powerpc/power8/cache.json
> f 2 302 floating-point.json pmu-events/arch/powerpc/power8/floating-point.json
> f 2 29283 marked.json pmu-events/arch/powerpc/power8/marked.json
> f 2 12028 memory.json pmu-events/arch/powerpc/power8/memory.json
> f 2 159271 other.json pmu-events/arch/powerpc/power8/other.json
> f 2 10777 pipeline.json pmu-events/arch/powerpc/power8/pipeline.json
> f 2 3781 pmc.json pmu-events/arch/powerpc/power8/pmc.json
> f 2 6664 translation.json pmu-events/arch/powerpc/power8/translation.json
> f 2 25104 frontend.json pmu-events/arch/powerpc/power8/frontend.json
> d 1 4096 power9 pmu-events/arch/powerpc/power9
> f 2 1096 floating-point.json pmu-events/arch/powerpc/power9/floating-point.json
> f 2 5503 cache.json pmu-events/arch/powerpc/power9/cache.json
> f 2 14885 frontend.json pmu-events/arch/powerpc/power9/frontend.json
> f 2 27807 marked.json pmu-events/arch/powerpc/power9/marked.json
> f 2 4820 memory.json pmu-events/arch/powerpc/power9/memory.json
> f 2 85387 other.json pmu-events/arch/powerpc/power9/other.json
> f 2 23839 pipeline.json pmu-events/arch/powerpc/power9/pipeline.json
> f 2 5138 pmc.json pmu-events/arch/powerpc/power9/pmc.json
> f 2 9897 translation.json pmu-events/arch/powerpc/power9/translation.json
> f 1 440 mapfile.csv pmu-events/arch/powerpc/mapfile.csv
> jevents: Processing mapfile pmu-events/arch/powerpc/mapfile.csv
> CC /home/suka/linux-acme.git/tools/perf/perf-obj/pmu-events/pmu-events.o
> /home/suka/linux-acme.git/tools/perf/perf-obj/pmu-events/pmu-events.c:2:1: error: expected identifier or ‘(’ before ‘{’ token
> {
> ^
> /home/suka/linux-acme.git/tools/perf/perf-obj/pmu-events/pmu-events.c:8:2: error: expected identifier or ‘(’ before ‘,’ token
> },
> ^
> /home/suka/linux-acme.git/tools/perf/perf-obj/pmu-events/pmu-events.c:15:2: error: expected identifier or ‘(’ before ‘,’ token
> },
> ^
> /home/suka/linux-acme.git/tools/perf/perf-obj/pmu-events/pmu-events.c:22:2: error: expected identifier or ‘(’ before ‘,’ token
> },
>
> ----
prev parent reply other threads:[~2018-03-14 1:52 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-03-13 19:17 perf-core build fails on powerpc Sukadev Bhattiprolu
2018-03-13 19:29 ` John Garry
2018-03-13 20:10 ` Sukadev Bhattiprolu
2018-03-13 20:53 ` John Garry
2018-03-13 21:18 ` Sukadev Bhattiprolu
2018-03-14 7:10 ` John Garry
2018-03-14 9:23 ` John Garry
2018-03-14 1:52 ` Arnaldo Carvalho de Melo [this message]
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=20180314015234.GA19781@kernel.org \
--to=acme@kernel.org \
--cc=john.garry@huawei.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mpe@ellerman.id.au \
--cc=sukadev@linux.vnet.ibm.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.