perf tools: /proc/kcore requires CAP_SYS_RAWIO message too noisy
The "/proc/kcore requires CAP_SYS_RAWIO" message comes up all the time for 'perf script' if vmlinux is not found and the user isn't root, even when the kernel is not being traced and even though the message is only really relevant for annotation. Change it to pr_debug and instead put a note in the message displayed if annotation is not possible. Also, the file being accessed might not be /proc/kcore. Tools can be directed to a different location using the --kallsyms option in which case kcore is expected to be in the same directory. Adjust the message so it is not misleading in that case. Signed-off-by: Adrian Hunter <adrian.hunter@intel.com> Cc: Jiri Olsa <jolsa@redhat.com> Cc: Li Zhang <zhlcindy@linux.vnet.ibm.com> Cc: Sukadev Bhattiprolu <sukadev@linux.vnet.ibm.com> Link: http://lkml.kernel.org/r/1440065260-8802-1-git-send-email-adrian.hunter@intel.com Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
Родитель
05169df556
Коммит
133de94043
|
@ -1126,6 +1126,7 @@ fallback:
|
|||
dso->annotate_warned = 1;
|
||||
pr_err("Can't annotate %s:\n\n"
|
||||
"No vmlinux file%s\nwas found in the path.\n\n"
|
||||
"Note that annotation using /proc/kcore requires CAP_SYS_RAWIO capability.\n\n"
|
||||
"Please use:\n\n"
|
||||
" perf buildid-cache -vu vmlinux\n\n"
|
||||
"or:\n\n"
|
||||
|
|
|
@ -1138,8 +1138,8 @@ static int dso__load_kcore(struct dso *dso, struct map *map,
|
|||
|
||||
fd = open(kcore_filename, O_RDONLY);
|
||||
if (fd < 0) {
|
||||
pr_err("%s requires CAP_SYS_RAWIO capability to access.\n",
|
||||
kcore_filename);
|
||||
pr_debug("Failed to open %s. Note /proc/kcore requires CAP_SYS_RAWIO capability to access.\n",
|
||||
kcore_filename);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче