perf symbols: Allow forcing reading of non-root owned files by root
authorArnaldo Carvalho de Melo <acme@redhat.com>
Thu, 12 Nov 2015 19:50:13 +0000 (16:50 -0300)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Thu, 12 Nov 2015 21:58:18 +0000 (18:58 -0300)
commit2059fc7a5a9e667797b8ec503bfb4685afee48d8
tree04b96518a95e0e43df054a7b81806e52ec2407e2
parentb7f294b58adb02d928dccb04bd39cb789db09e1f
perf symbols: Allow forcing reading of non-root owned files by root

When the root user tries to read a file owned by some other user we get:

  # ls -la perf.data
  -rw-------. 1 acme acme 20032 Nov 12 15:50 perf.data
  # perf report
  File perf.data not owned by current user or root (use -f to override)
  # perf report -f | grep -v ^# | head -2
    30.96%  ls       [kernel.vmlinux]  [k] do_set_pte
    28.24%  ls       libc-2.20.so      [.] intel_check_word
  #

That wasn't happening when the symbol code tried to read a JIT map,
where the same check was done but no forcing was possible, fix it.

Reported-by: Brendan Gregg <brendan.d.gregg@gmail.com>
Tested-by: Brendan Gregg <brendan.d.gregg@gmail.com>
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://permalink.gmane.org/gmane.linux.kernel.perf.user/2380
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/builtin-report.c
tools/perf/util/symbol.c
tools/perf/util/symbol.h