hi,
Andi reported wrong error message for :S modifier
on kernel without event ID ioctl support.

The reason was that the ioctl failed, but the error was
printed like the mmap would:

    $ perf.old record -e '{cycles,cache-misses}:S' ls
    failed to mmap with 25 (Inappropriate ioctl for device)
    ls: Terminated

I experimentally added sort of 'libc errno' interface for
perf_evlist to be able to get proper error message, like:

    $ perf record -e '{cycles,cache-misses}:S' ls
    Cannot read event group on this kernel.
    Please consider kernel update (v3.12+).
    ls: Terminated

I'm not sure about this approach. Maybe it'd be better be more
global..? So before throwing this out, sending it as RFC ;-)

thanks for ideas,
jirka

Signed-off-by: Jiri Olsa <[email protected]>
Cc: Corey Ashford <[email protected]>
Cc: Frederic Weisbecker <[email protected]>
Cc: Ingo Molnar <[email protected]>
Cc: Namhyung Kim <[email protected]>
Cc: Paul Mackerras <[email protected]>
Cc: Peter Zijlstra <[email protected]>
Cc: Arnaldo Carvalho de Melo <[email protected]>
Cc: David Ahern <[email protected]>
Cc: Andi Kleen <[email protected]>
---
Jiri Olsa (6):
      perf tools: Add perf_evlist error string interface
      perf tools: Add PERF_EVLIST__ERRNO_MMAP internal error
      perf tools: Add PERF_EVLIST__ERRNO_OPEN internal error
      perf tools: Add PERF_EVLIST__ERRNO_IOCTL_ID_GROUP internal error
      perf tools: Add PERF_EVLIST__ERRNO_NEWTP internal error
      perf tools: Use perf_evlist__strerror in kvm/record/top/trace commands

 tools/perf/builtin-kvm.c    |   2 +-
 tools/perf/builtin-record.c |  13 +------
 tools/perf/builtin-top.c    |   3 +-
 tools/perf/builtin-trace.c  |  34 ++++++++---------
 tools/perf/util/evlist.c    | 205 
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---------------------------------
 tools/perf/util/evlist.h    |  23 +++++++++++-
 6 files changed, 181 insertions(+), 99 deletions(-)
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to