lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20180313191742.GA29120@us.ibm.com>
Date:   Tue, 13 Mar 2018 12:17:42 -0700
From:   Sukadev Bhattiprolu <sukadev@...ux.vnet.ibm.com>
To:     Arnaldo Carvalho de Melo <acme@...nel.org>
Cc:     john.garry@...wei.com, linux-kernel@...r.kernel.org,
        Michael Ellerman <mpe@...erman.id.au>
Subject: perf-core build fails on powerpc



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@...wei.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
 },

----

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ