• Arnaldo Carvalho de Melo's avatar
    perf tools: Provide help for subset of options · 161d9041
    Arnaldo Carvalho de Melo authored
    Some tools have a lot of options, so, providing a way to show help just
    for some of them may come handy:
    
      $ perf report -h --tui
    
       Usage: perf report [<options>]
    
            --tui             Use the TUI interface
    
      $ perf report -h --tui --showcpuutilization -b -c
    
       Usage: perf report [<options>]
    
        -b, --branch-stack    use branch records for per branch histogram filling
        -c, --comms <comm[,comm...]>
                              only consider symbols in these comms
            --showcpuutilization
                              Show sample percentage for different cpu modes
            --tui             Use the TUI interface
    
      $
    
    Using it with perf bash completion is also handy, just make sure you
    source the needed file:
    
      $ . ~/git/linux/tools/perf/perf-completion.sh
    
    Then press tab/tab after -- to see a list of options, put them after -h
    and only the options chosen will have its help presented:
    
      $ perf report -h --
      --asm-raw              --demangle-kernel      --group
      --kallsyms             --pretty               --stdio
      --branch-history       --disassembler-style   --gtk
      --max-stack            --showcpuutilization   --symbol-filter
      --branch-stack         --dsos                 --header
      --mem-mode             --show-info            --symbols
      --call-graph           --dump-raw-trace       --header-only
      --modules              --show-nr-samples      --symfs
      --children             --exclude-other        --hide-unresolved
      --objdump              --show-ref-call-graph  --threads
      --column-widths        --fields               --ignore-callees
      --parent               --show-total-period    --tid
      --comms                --field-separator      --input
      --percentage           --socket-filter        --tui
      --cpu                  --force                --inverted
      --percent-limit        --sort                 --verbose
      --demangle             --full-source-path     --itrace
      --pid                  --source               --vmlinux
      $ perf report -h --socket-filter
    
       Usage: perf report [<options>]
    
          --socket-filter <n>
                      only show processor socket that match with this filter
    Suggested-by: default avatarIngo Molnar <mingo@kernel.org>
    Cc: Adrian Hunter <adrian.hunter@intel.com>
    Cc: Borislav Petkov <bp@suse.de>
    Cc: Brendan Gregg <brendan.d.gregg@gmail.com>
    Cc: Chandler Carruth <chandlerc@gmail.com>
    Cc: David Ahern <dsahern@gmail.com>
    Cc: Frederic Weisbecker <fweisbec@gmail.com>
    Cc: Jiri Olsa <jolsa@redhat.com>
    Cc: Namhyung Kim <namhyung@kernel.org>
    Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
    Cc: Stephane Eranian <eranian@google.com>
    Cc: Wang Nan <wangnan0@huawei.com>
    Link: http://lkml.kernel.org/n/tip-83mcdd3wj0379jcgea8w0fxa@git.kernel.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
    161d9041
parse-options.c 19.2 KB