From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1762496AbcALOaB (ORCPT ); Tue, 12 Jan 2016 09:30:01 -0500 Received: from mail.kernel.org ([198.145.29.136]:54452 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753093AbcALOaA (ORCPT ); Tue, 12 Jan 2016 09:30:00 -0500 Date: Tue, 12 Jan 2016 11:29:56 -0300 From: Arnaldo Carvalho de Melo To: Ingo Molnar Cc: Jiri Olsa , lkml , David Ahern , Namhyung Kim , Peter Zijlstra Subject: Re: [PATCH] perf tools: Do not show trace command if it's not compiled in Message-ID: <20160112142956.GU18367@kernel.org> References: <1450629119-508-1-git-send-email-jolsa@kernel.org> <20160112112341.GB26496@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20160112112341.GB26496@gmail.com> X-Url: http://acmel.wordpress.com User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Em Tue, Jan 12, 2016 at 12:23:41PM +0100, Ingo Molnar escreveu: > > * Jiri Olsa 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]': Yeah, just like we have: $ make NO_DWARF=1 O=/tmp/build/perf -C tools/perf/ install make: Entering directory '/home/git/linux/tools/perf' BUILD: Doing 'make -j4' parallel build config/Makefile:328: DWARF support is off, BPF prologue is disabled SUBDIR Documentation ASCIIDOC /tmp/build/perf/perf-diff.xml CC /tmp/build/perf/util/abspath.o $ perf record -h vm build Usage: perf record [] [] or: perf record [] -- [] -B, --no-buildid do not collect buildids in perf.data -N, --no-buildid-cache do not update the buildid cache --vmlinux vmlinux pathname (not built-in because NO_DWARF=1) $ > 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