alistair23-linux/tools/perf
Jiri Olsa 63914aca8f perf tools: Show better error message in case we fail to open counters due to EBUSY error
Showing better error message in case we fail to open counters due to the
EBUSY error. If we detect oprofile daemon process running, we now
display following message for EBUSY error:

  $ perf record ls
  Error:
  The PMU counters are busy/taken by another profiler.
  We found oprofile daemon running, please stop it and try again.

In case oprofiled was not detected the current error message stays:

  $ perf record ls
  Error:
  The sys_perf_event_open() syscall returned with 16 (Device or resource busy) for event (cycles).
  /bin/dmesg may provide additional information.
  No CONFIG_PERF_EVENTS=y kernel support configured?

Also changing PERF_FLAG_FD_CLOEXEC detection code not to display error
in case of EBUSY error, as it currently does:

  $ perf record ls
  Error:
  perf_event_open(..., PERF_FLAG_FD_CLOEXEC) failed with unexpected error 16 (Device or resource busy)
  perf_event_open(..., 0) failed unexpectedly with error 16 (Device or resource busy)
  The PMU counters are busy/taken by another profiler.
  We found oprofile daemon running, please stop it and try again.

Signed-off-by: Jiri Olsa <jolsa@kernel.org>
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Namhyung Kim <namhyung@gmail.com>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Stephane Eranian <eranian@google.com>
Cc: William Cohen <wcohen@redhat.com>
Cc: Yann Droneaud <ydroneaud@opteya.com>
Link: http://lkml.kernel.org/r/1406908014-8312-1-git-send-email-jolsa@kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
2014-08-12 12:03:02 -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: Add feature test for __sync_val_compare_and_swap 2014-07-16 17:57:36 -03:00
Documentation perf inject: Add --kallsyms parameter 2014-07-25 12:08:34 -03:00
python
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: Remove verbose from functions prototypes 2014-07-17 11:04:42 -03:00
util perf tools: Show better error message in case we fail to open counters due to EBUSY error 2014-08-12 12:03:02 -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 tools: Rename ordered_samples bool to ordered_events 2014-08-12 12:02:54 -03:00
builtin-kvm.c perf tools: Flush ordered events in case of allocation failure 2014-08-12 12:02:57 -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: Add top.children config option 2014-06-01 14:35:07 +02:00
builtin-trace.c perf tools: Rename ordered_samples bool to ordered_events 2014-08-12 12:02:54 -03:00
builtin.h
command-list.txt
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