linux/tools/perf
Masami Hiramatsu 5e45187cc9 perf probe: Fix --list option to show events only with uprobe events
Current perf probe --list doesn't work if only CONFIG_UPROBE_EVENTS=y
because it aborts when it fails to open kprobe_events file before
checking uprobe_events file.

This fixes --list option to show dynamic events if it can open either
kprobe_events or uprobe_events. Only if it failed to open both of them,
it shows an error message and aborts.

Without this patch, if we run perf probe -l on the kernel configured
with CONFIG_KPROBE_EVENTS=n and CONFIG_UPROBE_EVENTS=y,

  # perf probe -l
  /sys/kernel/debug/tracing/kprobe_events file does not exist - please rebuild ker
    Error: Failed to show event list.

With this patch,

  # perf probe -l
    probe_perf:alloc_event (on alloc_event@lib/traceevent/event-parse.c in /home/fedora/ksrc/linux-3/tools/perf/perf)

Changes in v2:
 - Use strerror_r instead of strerror.

Reported-by: Naohiro Aota <naota@elisp.net>
Signed-off-by: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Naohiro Aota <naota@elisp.net>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Link: http://lkml.kernel.org/r/20140813161248.26440.84370.stgit@kbuild-fedora.novalocal
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
2014-08-13 15:53:35 -03:00
..
arch perf tools: Fix arm64 build error 2014-07-30 12:37:55 -03:00
bench perf tools: Enable close-on-exec flag on perf file descriptor 2014-07-18 09:09:34 +02:00
config perf tools: Default to python version 2 2014-08-12 12:03:08 -03:00
Documentation perf top: Add -w option for setting column width 2014-08-12 12:03:06 -03:00
python perf python: Remove duplicate TID bit from mask 2013-08-07 17:35:25 -03:00
scripts perf script: Add callchain to generic and tracepoint events 2014-07-16 17:57:33 -03:00
tests perf tools: Move rdtsc() function 2014-07-23 11:48:11 -03:00
ui perf tools: Fix column alignment when headers aren't shown on TUI 2014-08-12 12:03:07 -03:00
util perf probe: Fix --list option to show events only with uprobe events 2014-08-13 15:53:35 -03:00
.gitignore perf tools: Ignore 'perf timechart' output file 2013-10-11 12:17:37 -03:00
builtin-annotate.c perf tools: Rename ordered_samples bool to ordered_events 2014-08-12 12:02:54 -03:00
builtin-bench.c perf bench: Add --repeat option 2014-06-19 16:13:15 -03:00
builtin-buildid-cache.c perf buildid-cache: Apply force option to copying kcore 2014-07-16 17:57:35 -03:00
builtin-buildid-list.c perf session: Separating data file properties from session 2013-10-21 17:33:25 -03:00
builtin-diff.c perf tools: Rename ordered_samples bool to ordered_events 2014-08-12 12:02:54 -03:00
builtin-evlist.c perf tools: Move pr_* debug macros into debug object 2014-07-17 12:58:39 -03:00
builtin-help.c perf tools: Move pr_* debug macros into debug object 2014-07-17 12:58:39 -03:00
builtin-inject.c perf tools: Rename ordered_samples bool to ordered_events 2014-08-12 12:02:54 -03:00
builtin-kmem.c perf kmem: Do not ignore mmap events 2014-08-12 12:03:03 -03:00
builtin-kvm.c perf kvm: Fix stdin handling for 'kvm stat live' command 2014-08-13 12:42:24 -03:00
builtin-list.c perf list: Add usage 2013-11-05 14:26:41 -03:00
builtin-lock.c perf tools: Rename ordered_samples bool to ordered_events 2014-08-12 12:02:54 -03:00
builtin-mem.c perf tools: Rename ordered_samples bool to ordered_events 2014-08-12 12:02:54 -03:00
builtin-probe.c perf probe: Show error code and description in verbose mode 2014-06-09 14:34:09 -03:00
builtin-record.c perf record: Honour --no-time command line option 2014-08-12 12:00:03 -03:00
builtin-report.c perf tools: Add report.queue-size config file option 2014-08-12 12:03:01 -03:00
builtin-sched.c perf tools: Rename ordered_samples bool to ordered_events 2014-08-12 12:02:54 -03:00
builtin-script.c perf tools: Rename ordered_samples bool to ordered_events 2014-08-12 12:02:54 -03:00
builtin-stat.c perf tools: Fix wrong condition for allocation failure 2014-06-27 11:14:54 +02:00
builtin-timechart.c perf tools: Rename ordered_samples bool to ordered_events 2014-08-12 12:02:54 -03:00
builtin-top.c perf top: Setup signals for terminal output 2014-08-13 12:42:24 -03:00
builtin-trace.c perf tools: Rename ordered_samples bool to ordered_events 2014-08-12 12:02:54 -03:00
builtin.h perf tools: Add new mem command for memory access profiling 2013-04-01 12:21:44 -03:00
command-list.txt perf tools: Add new mem command for memory access profiling 2013-04-01 12:21:44 -03:00
CREDITS
design.txt perf tools: Update some code references in design.txt 2014-03-18 18:17:06 -03:00
Makefile perf tools: Add 'build-test' make target 2014-01-16 16:26:26 -03:00
Makefile.perf perf tools: Create ordered-events object 2014-08-12 12:02:58 -03:00
MANIFEST perf kvm: Add stat support on s390 2014-07-16 17:57:33 -03:00
perf-archive.sh
perf-completion.sh perf sched: Introduce --list-cmds for use by scripts 2014-04-16 17:16:05 +02:00
perf-sys.h perf tools: Allow to use cpuinfo on s390 2014-07-07 16:55:24 -03:00
perf.c perf tools: Fix perf usage string leftover 2014-07-28 15:58:13 +02:00
perf.h perf tools: Move ACCESS_ONCE from perf.h header 2014-05-05 17:49:07 +02:00