All of lore.kernel.org
 help / color / mirror / Atom feed
* [GIT PULL 0/2] perf/urgent fix
@ 2015-12-17  0:56 Arnaldo Carvalho de Melo
  2015-12-17  0:56 ` [PATCH 1/2] perf list: Add support for PERF_COUNT_SW_BPF_OUT Arnaldo Carvalho de Melo
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Arnaldo Carvalho de Melo @ 2015-12-17  0:56 UTC (permalink / raw)
  To: Ingo Molnar
  Cc: linux-kernel, Arnaldo Carvalho de Melo, Adrian Hunter,
	Alexei Starovoitov, David Ahern, Jiri Olsa, Namhyung Kim,
	Wang Nan, William Cohen, Arnaldo Carvalho de Melo

Hi Ingo,

	Please consider pulling, this one is already in perf/core,
but is needed for perf/urgent too, as reported by Will Cohen.

- Arnaldo

The following changes since commit 03fba21adb190fc0aec9c2556639c1c1b195aee7:

  Merge tag 'perf-urgent-for-mingo' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/urgent (2015-12-08 06:05:12 +0100)

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git tags/perf-urgent-for-mingo

for you to fetch changes up to fb202539e61b14bc63ac29af10fe5d758ecd880a:

  perf list: Robustify event printing routine (2015-12-16 16:43:10 -0300)

----------------------------------------------------------------
perf/urgent fix:

User visible changes:

  - Fix 'perf list' segfault due to lack of support for PERF_CONF_SW_BPF_OUTPUT
    in an array used just for printing available events, robustify the code
    involved (Arnaldo Carvalho de Melo)

Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>

----------------------------------------------------------------
Arnaldo Carvalho de Melo (2):
      perf list: Add support for PERF_COUNT_SW_BPF_OUT
      perf list: Robustify event printing routine

 tools/perf/util/parse-events.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [PATCH 1/2] perf list: Add support for PERF_COUNT_SW_BPF_OUT
  2015-12-17  0:56 [GIT PULL 0/2] perf/urgent fix Arnaldo Carvalho de Melo
@ 2015-12-17  0:56 ` Arnaldo Carvalho de Melo
  2015-12-17  0:56 ` [PATCH 2/2] perf list: Robustify event printing routine Arnaldo Carvalho de Melo
  2015-12-18  8:43 ` [GIT PULL 0/2] perf/urgent fix Ingo Molnar
  2 siblings, 0 replies; 4+ messages in thread
From: Arnaldo Carvalho de Melo @ 2015-12-17  0:56 UTC (permalink / raw)
  To: Ingo Molnar
  Cc: linux-kernel, Arnaldo Carvalho de Melo, Adrian Hunter,
	Alexei Starovoitov, David Ahern, Jiri Olsa, Namhyung Kim,
	Wang Nan, William Cohen

From: Arnaldo Carvalho de Melo <acme@redhat.com>

When PERF_COUNT_SW_BPF_OUTPUT was added to the kernel we should've
added it to tools/perf, where it is used just to list events.

This ended up causing a segfault in commands like "perf list stall".

Fix it by adding that new software counter.

A patch to robustify perf to not segfault when the next counter gets
added in the kernel will follow this one.

Reported-by: Ingo Molnar <mingo@kernel.org>
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Alexei Starovoitov <ast@kernel.org>
Cc: David Ahern <dsahern@gmail.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Wang Nan <wangnan0@huawei.com>
Cc: William Cohen <wcohen@redhat.com>
Link: http://lkml.kernel.org/n/tip-uya354upi3eprsey6mi5962d@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
 tools/perf/util/parse-events.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/tools/perf/util/parse-events.c b/tools/perf/util/parse-events.c
index e48d9da75707..40ae92a8673c 100644
--- a/tools/perf/util/parse-events.c
+++ b/tools/perf/util/parse-events.c
@@ -124,6 +124,10 @@ struct event_symbol event_symbols_sw[PERF_COUNT_SW_MAX] = {
 		.symbol = "dummy",
 		.alias  = "",
 	},
+	[PERF_COUNT_SW_BPF_OUTPUT] = {
+		.symbol = "bpf-output",
+		.alias  = "",
+	},
 };
 
 #define __PERF_EVENT_FIELD(config, name) \
-- 
2.1.0


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [PATCH 2/2] perf list: Robustify event printing routine
  2015-12-17  0:56 [GIT PULL 0/2] perf/urgent fix Arnaldo Carvalho de Melo
  2015-12-17  0:56 ` [PATCH 1/2] perf list: Add support for PERF_COUNT_SW_BPF_OUT Arnaldo Carvalho de Melo
@ 2015-12-17  0:56 ` Arnaldo Carvalho de Melo
  2015-12-18  8:43 ` [GIT PULL 0/2] perf/urgent fix Ingo Molnar
  2 siblings, 0 replies; 4+ messages in thread
From: Arnaldo Carvalho de Melo @ 2015-12-17  0:56 UTC (permalink / raw)
  To: Ingo Molnar
  Cc: linux-kernel, Arnaldo Carvalho de Melo, Adrian Hunter,
	Alexei Starovoitov, David Ahern, Jiri Olsa, Namhyung Kim,
	Wang Nan, William Cohen

From: Arnaldo Carvalho de Melo <acme@redhat.com>

When a43eec304259 ("bpf: introduce bpf_perf_event_output() helper") added
PERF_COUNT_SW_BPF_OUTPUT we ended up with a new entry in the event_symbols_sw
array that wasn't initialized, thus set to NULL, fix print_symbol_events()
to check for that case so that we don't crash if this happens again.

  (gdb) bt
  #0  __match_glob (ignore_space=false, pat=<optimized out>, str=<optimized out>) at util/string.c:198
  #1  strglobmatch (str=<optimized out>, pat=pat@entry=0x7fffffffe61d "stall") at util/string.c:252
  #2  0x00000000004993a5 in print_symbol_events (type=1, syms=0x872880 <event_symbols_sw+160>, max=11, name_only=false, event_glob=0x7fffffffe61d "stall")
      at util/parse-events.c:1615
  #3  print_events (event_glob=event_glob@entry=0x7fffffffe61d "stall", name_only=false) at util/parse-events.c:1675
  #4  0x000000000042c79e in cmd_list (argc=1, argv=0x7fffffffe390, prefix=<optimized out>) at builtin-list.c:68
  #5  0x00000000004788a5 in run_builtin (p=p@entry=0x871758 <commands+120>, argc=argc@entry=2, argv=argv@entry=0x7fffffffe390) at perf.c:370
  #6  0x0000000000420ab0 in handle_internal_command (argv=0x7fffffffe390, argc=2) at perf.c:429
  #7  run_argv (argv=0x7fffffffe110, argcp=0x7fffffffe11c) at perf.c:473
  #8  main (argc=2, argv=0x7fffffffe390) at perf.c:588
  (gdb) p event_symbols_sw[PERF_COUNT_SW_BPF_OUTPUT]
  $4 = {symbol = 0x0, alias = 0x0}
  (gdb)

A patch to robustify perf to not segfault when the next counter gets added in
the kernel will follow this one.

Reported-by: Ingo Molnar <mingo@kernel.org>
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Alexei Starovoitov <ast@kernel.org>
Cc: David Ahern <dsahern@gmail.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Wang Nan <wangnan0@huawei.com>
Cc: William Cohen <wcohen@redhat.com>
Link: http://lkml.kernel.org/n/tip-57wysblcjfrseb0zg5u7ek10@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
 tools/perf/util/parse-events.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/perf/util/parse-events.c b/tools/perf/util/parse-events.c
index 40ae92a8673c..6fc8cd753e1a 100644
--- a/tools/perf/util/parse-events.c
+++ b/tools/perf/util/parse-events.c
@@ -1883,7 +1883,7 @@ restart:
 
 	for (i = 0; i < max; i++, syms++) {
 
-		if (event_glob != NULL &&
+		if (event_glob != NULL && syms->symbol != NULL &&
 		    !(strglobmatch(syms->symbol, event_glob) ||
 		      (syms->alias && strglobmatch(syms->alias, event_glob))))
 			continue;
-- 
2.1.0


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [GIT PULL 0/2] perf/urgent fix
  2015-12-17  0:56 [GIT PULL 0/2] perf/urgent fix Arnaldo Carvalho de Melo
  2015-12-17  0:56 ` [PATCH 1/2] perf list: Add support for PERF_COUNT_SW_BPF_OUT Arnaldo Carvalho de Melo
  2015-12-17  0:56 ` [PATCH 2/2] perf list: Robustify event printing routine Arnaldo Carvalho de Melo
@ 2015-12-18  8:43 ` Ingo Molnar
  2 siblings, 0 replies; 4+ messages in thread
From: Ingo Molnar @ 2015-12-18  8:43 UTC (permalink / raw)
  To: Arnaldo Carvalho de Melo
  Cc: linux-kernel, Adrian Hunter, Alexei Starovoitov, David Ahern,
	Jiri Olsa, Namhyung Kim, Wang Nan, William Cohen,
	Arnaldo Carvalho de Melo


* Arnaldo Carvalho de Melo <acme@kernel.org> wrote:

> Hi Ingo,
> 
> 	Please consider pulling, this one is already in perf/core,
> but is needed for perf/urgent too, as reported by Will Cohen.
> 
> - Arnaldo
> 
> The following changes since commit 03fba21adb190fc0aec9c2556639c1c1b195aee7:
> 
>   Merge tag 'perf-urgent-for-mingo' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/urgent (2015-12-08 06:05:12 +0100)
> 
> are available in the git repository at:
> 
>   git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git tags/perf-urgent-for-mingo
> 
> for you to fetch changes up to fb202539e61b14bc63ac29af10fe5d758ecd880a:
> 
>   perf list: Robustify event printing routine (2015-12-16 16:43:10 -0300)
> 
> ----------------------------------------------------------------
> perf/urgent fix:
> 
> User visible changes:
> 
>   - Fix 'perf list' segfault due to lack of support for PERF_CONF_SW_BPF_OUTPUT
>     in an array used just for printing available events, robustify the code
>     involved (Arnaldo Carvalho de Melo)
> 
> Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
> 
> ----------------------------------------------------------------
> Arnaldo Carvalho de Melo (2):
>       perf list: Add support for PERF_COUNT_SW_BPF_OUT
>       perf list: Robustify event printing routine
> 
>  tools/perf/util/parse-events.c | 6 +++++-
>  1 file changed, 5 insertions(+), 1 deletion(-)

Pulled, thanks a lot Arnaldo!

	Ingo

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2015-12-18  8:43 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-12-17  0:56 [GIT PULL 0/2] perf/urgent fix Arnaldo Carvalho de Melo
2015-12-17  0:56 ` [PATCH 1/2] perf list: Add support for PERF_COUNT_SW_BPF_OUT Arnaldo Carvalho de Melo
2015-12-17  0:56 ` [PATCH 2/2] perf list: Robustify event printing routine Arnaldo Carvalho de Melo
2015-12-18  8:43 ` [GIT PULL 0/2] perf/urgent fix Ingo Molnar

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.