1. 20 4月, 2017 1 次提交
  2. 13 7月, 2016 1 次提交
    • A
      tools: Introduce str_error_r() · c8b5f2c9
      Arnaldo Carvalho de Melo 提交于
      The tools so far have been using the strerror_r() GNU variant, that
      returns a string, be it the buffer passed or something else.
      
      But that, besides being tricky in cases where we expect that the
      function using strerror_r() returns the error formatted in a provided
      buffer (we have to check if it returned something else and copy that
      instead), breaks the build on systems not using glibc, like Alpine
      Linux, where musl libc is used.
      
      So, introduce yet another wrapper, str_error_r(), that has the GNU
      interface, but uses the portable XSI variant of strerror_r(), so that
      users rest asured that the provided buffer is used and it is what is
      returned.
      
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: David Ahern <dsahern@gmail.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Wang Nan <wangnan0@huawei.com>
      Link: http://lkml.kernel.org/n/tip-d4t42fnf48ytlk8rjxs822tf@git.kernel.orgSigned-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      c8b5f2c9
  3. 20 11月, 2015 1 次提交
    • A
      perf tests: Pass the subtest index to each test routine · 721a1f53
      Arnaldo Carvalho de Melo 提交于
      Some tests have sub-tests we want to run, so allow passing this.
      
      Wang tried to avoid having to touch all tests, but then, having the
      test.func in an anonymous union makes the build fail on older compilers,
      like the one in RHEL6, where:
      
        test a = {
      	.func = foo,
        };
      
      fails.
      
      To fix it leave the func pointer in the main structure and pass the subtest
      index to all tests, end result function is the same, but we have just one
      function pointer, not two, with and without the subtest index as an argument.
      
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: David Ahern <dsahern@gmail.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Wang Nan <wangnan0@huawei.com>
      Link: http://lkml.kernel.org/n/tip-5genj0ficwdmelpoqlds0u4y@git.kernel.orgSigned-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      721a1f53
  4. 20 10月, 2015 1 次提交
    • N
      perf test: Silence tracepoint event failures · 87191383
      Namhyung Kim 提交于
      Currently, when 'perf test' is run by a normal user, it'll fail to
      access tracepoint events.  The output becomes somewhat messy because it
      tries to be nice with long error messages and hints.
      
      IMHO this is not needed for 'perf test' by default and AFAIK 'perf test'
      uses pr_debug() rather than pr_err() for such messages so that one can
      use -v option to see further details on failed testcases if needed.
      
      Before:
        $ perf test
         1: vmlinux symtab matches kallsyms                          : FAILED!
         2: detect openat syscall event                              :Error:
        No permissions to read
        /sys/kernel/debug/tracing/events/syscalls/sys_enter_openat
        Hint:	Try 'sudo mount -o remount,mode=755 /sys/kernel/debug/tracing'
        FAILED!
         3: detect openat syscall event on all cpus                  :Error:
        No permissions to read
        /sys/kernel/debug/tracing/events/syscalls/sys_enter_openat
        Hint:	Try 'sudo mount -o remount,mode=755 /sys/kernel/debug/tracing'
        FAILED!
         ...
      
      After:
        $ perf test
         1: vmlinux symtab matches kallsyms                          : FAILED!
         2: detect openat syscall event                              : FAILED!
         3: detect openat syscall event on all cpus                  : FAILED!
         ...
      
        $ perf test -v 2
         2: detect openat syscall event                              :
        --- start ---
        test child forked, pid 30575
        Error:	    No permissions to read
        /sys/kernel/debug/tracing/events/syscalls/sys_enter_openat
        Hint:  Try 'sudo mount -o remount,mode=755 /sys/kernel/debug/tracing'
      
        test child finished with -1
        ---- end ----
        detect openat syscall event: FAILED!
      Signed-off-by: NNamhyung Kim <namhyung@kernel.org>
      Tested-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      Acked-by: NDavid Ahern <dsahern@gmail.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Cc: Wang Nan <wangnan0@huawei.com>
      Link: http://lkml.kernel.org/r/1445268229-1601-1-git-send-email-namhyung@kernel.orgSigned-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      87191383
  5. 15 9月, 2015 1 次提交
    • J
      perf evsel: Propagate error info from tp_format · 8dd2a131
      Jiri Olsa 提交于
      Propagate error info from tp_format via ERR_PTR to get it all the way
      down to the parse-event.c tracepoint adding routines. Following
      functions now return pointer with encoded error:
      
        - tp_format
        - trace_event__tp_format
        - perf_evsel__newtp_idx
        - perf_evsel__newtp
      
      This affects several other places in perf, that cannot use pointer check
      anymore, but must utilize the err.h interface, when getting error
      information from above functions list.
      Signed-off-by: NJiri Olsa <jolsa@kernel.org>
      Cc: David Ahern <dsahern@gmail.com>
      Cc: Matt Fleming <matt@codeblueprint.co.uk>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Cc: Raphael Beamonte <raphael.beamonte@gmail.com>
      Link: http://lkml.kernel.org/r/1441615087-13886-5-git-send-email-jolsa@kernel.org
      [ Add two missing ERR_PTR() and one IS_ERR() ]
      Signed-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      8dd2a131
  6. 14 9月, 2015 2 次提交
  7. 26 6月, 2015 4 次提交
  8. 29 5月, 2015 2 次提交
  9. 11 2月, 2015 1 次提交
  10. 16 8月, 2014 1 次提交
  11. 12 11月, 2013 1 次提交
    • A
      perf evsel: Remove idx parm from constructor · ef503831
      Arnaldo Carvalho de Melo 提交于
      Most uses of the evsel constructor are followed by a call to
      perf_evlist__add with an idex of evlist->nr_entries, so make rename
      the current constructor to perf_evsel__new_idx and remove the need
      for passing the constructor for the common case.
      
      We still need the new_idx variant because the way groups are handled,
      with evsel->nr_members holding the number of entries in an evlist,
      partitioning the evlist into sublists inside a single linked list.
      
      This asks for a clarifying refactoring, but for now simplify the non
      parser cases, so that tool writers don't have to bother with evsel idx
      setting.
      
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: David Ahern <dsahern@gmail.com>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: Mike Galbraith <efault@gmx.de>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Stephane Eranian <eranian@google.com>
      Link: http://lkml.kernel.org/n/tip-zy9tskx6jqm2rmw7468zze2a@git.kernel.orgSigned-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      ef503831
  12. 11 12月, 2012 1 次提交
  13. 15 11月, 2012 1 次提交