perf tools: Fix the bash completion to support listing events for --event
authorYunlong Song <yunlong.song@huawei.com>
Wed, 18 Mar 2015 13:35:50 +0000 (21:35 +0800)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Thu, 19 Mar 2015 16:49:37 +0000 (13:49 -0300)
The bash completion only supports -e rather than --event, so fix it.

Example:

Before this patch:

 $ perf record --event <TAB>
 $

As shown above, the events of record does not come out.

After this patch:

 $ perf record --event <TAB>
 lignment-faults                   cpu/instructions/
 L1-dcache-prefetch-misses          node-prefetches
 uncore_rbox_0/qpi0_idle_filt/
 branch-instructions                cpu/mem-loads/
 L1-dcache-store-misses             node-prefetch-misses
 uncore_rbox_0/qpi1_date_response/
 branch-load-misses                 cpu-migrations
 L1-dcache-stores                   node-store-misses
 uncore_rbox_0/qpi1_filt_send/
 branch-loads                       dTLB-load-misses
 L1-icache-load-misses              node-stores
 uncore_rbox_0/qpi1_idle_filt/
 ...

As shown above, the events of record can come out now.

Signed-off-by: Yunlong Song <yunlong.song@huawei.com>
Tested-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Wang Nan <wangnan0@huawei.com>
Link: http://lkml.kernel.org/r/1426685758-25488-6-git-send-email-yunlong.song@huawei.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/perf-completion.sh

index 4b58ac2ae578953db711992cca065d5ed226a267..3e25d3ea17f9c8ed58094fec3b1973ceffd9279a 100644 (file)
@@ -137,8 +137,8 @@ __perf_main ()
                        cmds=$($cmd --list-cmds)
                fi
                __perfcomp "$cmds" "$cur"
-       # List possible events for -e option
-       elif [[ $prev == "-e" && $prev_skip_opts == @(record|stat|top) ]]; then
+       # List possible events for -e and --event option
+       elif [[ $prev == @("-e"|"--event") && $prev_skip_opts == @(record|stat|top) ]]; then
                evts=$($cmd list --raw-dump)
                __perfcomp_colon "$evts" "$cur"
        else