perf top: Handle kptr_restrict
Commit-ID: 5f6f55809758e106eca72c6e01402c8080a88ee8 Gitweb: http://git.kernel.org/tip/5f6f55809758e106eca72c6e01402c8080a88ee8 Author: Arnaldo Carvalho de Melo <[email protected]> AuthorDate: Fri, 27 May 2011 11:53:28 -0300 Committer: Arnaldo Carvalho de Melo <[email protected]> CommitDate: Fri, 27 May 2011 16:02:25 -0300
perf top: Handle kptr_restrict
Reported-by Ingo Molnar <[email protected]>
Cc Frederic Weisbecker <[email protected]>
Cc Mike Galbraith <[email protected]>
Cc Paul Mackerras <[email protected]>
Cc Peter Zijlstra <[email protected]>
Cc Stephane Eranian <[email protected]>
Cc Tom Zanussi <[email protected]>
Signed-off-by Arnaldo Carvalho de Melo <[email protected]>
--- tools/perf/builtin-top.c | 15 +++++++++++++++ 1 files changed, 15 insertions(+), 0 deletions(-)
tools/perf/builtin-top.c +15 -0
@@ -80,6 +80,7 @@ static bool use_tui, use_stdio;static int default_interval =0 ; +static bool kptr_restrict_warned;static bool inherit = false;static int realtime_prio =0 ;static bool group = false;
@@ -738,6 +739,20 @@ static void perf_event__process_sample(const union perf_event *event, al.filtered)return ; +if (!kptr_restrict_warned && + symbol_conf.kptr_restrict && + al.cpumode ==PERF_RECORD_MISC_KERNEL ) { +ui__warning ( +"Kernel address maps (/proc/{kallsyms,modules}) are restricted.\n\n" +"Check /proc/sys/kernel/kptr_restrict.\n\n" +"Kernel%s samples will not be resolved.\n" , + !RB_EMPTY_ROOT (&al.map->dso->symbols[MAP__FUNCTION ]) ? +" modules" :"" ); +if (use_browser <=0 ) +sleep (5 ); + kptr_restrict_warned = true; + } +if (al.sym ==NULL ) {/* * As we do lazy loading of symtabs we only will know if the