Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1307293

Re: [PATCH] perf tools: Do not show trace command if it's not compiled in

From Ingo Molnar <mingo@kernel.org>
Newsgroups linux.kernel
Subject Re: [PATCH] perf tools: Do not show trace command if it's not compiled in
Date 2016-01-12 12:30 +0100
Message-ID <qQ5jc-cc-27@gated-at.bofh.it> (permalink)
References <qHPbz-2Zl-11@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


* Jiri Olsa <jolsa@kernel.org> wrote:

> The trace command still appears in help message when you
> run simple 'perf' command.
> 
> It's because the generate-cmdlist.sh does not care about the
> HAVE_LIBAUDIT_SUPPORT dependency of trace command and puts
> it into generated common_cmds array.
> 
> Wrapping trace command under HAVE_LIBAUDIT_SUPPORT dependency,
> which will exclude it from common_cmds array if HAVE_LIBAUDIT_SUPPORT
> is not set.

Btw., would it make sense to still list them, but denote them as '[NOT BUILT IN]':

 The most commonly used perf commands are:
   annotate        Read perf.data (created by perf record) and display annotated code
   archive         Create archive with object files with build-ids found in perf.data file
   bench           General framework for benchmark suites
   buildid-cache   Manage build-id cache.
   buildid-list    List the buildids in a perf.data file
   config          Get and set variables in a configuration file.
   data            Data file related processing
   diff            Read perf.data files and display the differential profile
   evlist          List the event names in a perf.data file
   inject          Filter to augment the events stream with additional information
   kmem            Tool to trace/measure kernel memory properties
   kvm             Tool to trace/measure kvm guest os
   list            List all symbolic event types
   lock            Analyze lock events
   mem             Profile memory accesses
   record          Run a command and record its profile into perf.data
   report          Read perf.data (created by perf record) and display the profile
   sched           Tool to trace/measure scheduler properties (latencies)
   script          Read perf.data (created by perf record) and display trace output
   stat            Run a command and gather performance counter statistics
   test            Runs sanity tests.
   timechart       Tool to visualize total system behavior during a workload
   top             System profiling tool.
   probe           Define new dynamic tracepoints
   trace           [NOT BUILT IN] strace inspired tool

?

... and print something informative if someone tries to use it:

  triton:~/tip> perf trace
  Error: The 'trace' subcommand is not built into this version of perf.
  Solution: You can enable it by rebuilding perf with all required libraries installed.

Instead of the rather misleading:

  triton:~/tip> perf trace
  perf: 'trace' is not a perf-command. See 'perf --help'.

(Plus once we grow a 'perf upgrade' command, we can suggest rebuilding via that 
route.)

Thanks,

	Ingo

Back to linux.kernel | Previous | NextNext in thread | Find similar | Unroll thread


Thread

Re: [PATCH] perf tools: Do not show trace command if it's not  compiled in Ingo Molnar <mingo@kernel.org> - 2016-01-12 12:30 +0100
  Re: [PATCH] perf tools: Do not show trace command if it's not  compiled in Arnaldo Carvalho de Melo <acme@kernel.org> - 2016-01-12 15:40 +0100
    Re: [PATCH] perf tools: Do not show trace command if it's not  compiled in Ingo Molnar <mingo@kernel.org> - 2016-01-13 11:50 +0100

csiph-web