From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1762222AbcALLXs (ORCPT ); Tue, 12 Jan 2016 06:23:48 -0500 Received: from mail-wm0-f65.google.com ([74.125.82.65]:35964 "EHLO mail-wm0-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752804AbcALLXp (ORCPT ); Tue, 12 Jan 2016 06:23:45 -0500 Date: Tue, 12 Jan 2016 12:23:41 +0100 From: Ingo Molnar To: Jiri Olsa Cc: Arnaldo Carvalho de Melo , 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: <20160112112341.GB26496@gmail.com> References: <1450629119-508-1-git-send-email-jolsa@kernel.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1450629119-508-1-git-send-email-jolsa@kernel.org> 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 * 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]': 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