Merge tag 'perf-urgent-for-mingo-5.3-20190723' of git://git.kernel.org/pub/scm/linux...
authorIngo Molnar <mingo@kernel.org>
Tue, 23 Jul 2019 21:41:33 +0000 (23:41 +0200)
committerIngo Molnar <mingo@kernel.org>
Tue, 23 Jul 2019 21:41:33 +0000 (23:41 +0200)
Pull perf/urgent fixes from Arnaldo Carvalho de Melo:

perf.data:

  Alexey Budankov:

  - Fix loading of compressed data split across adjacent records

  Jiri Olsa:

  - Fix buffer size setting for processing CPU topology perf.data header.

perf stat:

  Jiri Olsa:

  - Fix segfault for event group in repeat mode

  Cong Wang:

  - Always separate "stalled cycles per insn" line, it was being appended to
    the "instructions" line.

perf script:

  Andi Kleen:

  - Fix --max-blocks man page description.

  - Improve man page description of metrics.

  - Fix off by one in brstackinsn IPC computation.

perf probe:

  Arnaldo Carvalho de Melo:

  - Avoid calling freeing routine multiple times for same pointer.

perf build:

  - Do not use -Wshadow on gcc < 4.8, avoiding too strict warnings
    treated as errors, breaking the build.

Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
1  2 
tools/perf/util/probe-event.c

index cd1eb73cfe8316c3dd9c7462f787ce1c0f540d7a,4acd3457d39dd1ffe540edc65d07f2b66b9836c0..8394d48f8b32e4e82c8c3f4f2ffb8aa9039cfeef
@@@ -1562,17 -1562,6 +1562,17 @@@ static int parse_perf_probe_arg(char *s
                str = tmp + 1;
        }
  
 +      tmp = strchr(str, '@');
 +      if (tmp && tmp != str && strcmp(tmp + 1, "user")) { /* user attr */
 +              if (!user_access_is_supported()) {
 +                      semantic_error("ftrace does not support user access\n");
 +                      return -EINVAL;
 +              }
 +              *tmp = '\0';
 +              arg->user_access = true;
 +              pr_debug("user_access ");
 +      }
 +
        tmp = strchr(str, ':');
        if (tmp) {      /* Type setting */
                *tmp = '\0';
@@@ -2230,6 -2219,7 +2230,7 @@@ void clear_perf_probe_event(struct perf
                        field = next;
                }
        }
+       pev->nargs = 0;
        zfree(&pev->args);
  }