All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sukadev Bhattiprolu <sukadev@linux.vnet.ibm.com>
To: Arnaldo Carvalho de Melo <acme@kernel.org>
Cc: john.garry@huawei.com, linux-kernel@vger.kernel.org,
	Michael Ellerman <mpe@ellerman.id.au>
Subject: perf-core build fails on powerpc
Date: Tue, 13 Mar 2018 12:17:42 -0700	[thread overview]
Message-ID: <20180313191742.GA29120@us.ibm.com> (raw)



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:

	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
 },

----

             reply	other threads:[~2018-03-13 19:17 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-03-13 19:17 Sukadev Bhattiprolu [this message]
2018-03-13 19:29 ` perf-core build fails on powerpc 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

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=20180313191742.GA29120@us.ibm.com \
    --to=sukadev@linux.vnet.ibm.com \
    --cc=acme@kernel.org \
    --cc=john.garry@huawei.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mpe@ellerman.id.au \
    /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.