From: Yunlong Song <[email protected]>

The bash completion does not support listing events for 'perf kvm|kmem|
mem|lock|sched record|stat|top -e <TAB>', where 'kvm|kmem|mem|lock|sched'
are all subcommands of perf.

Example:

Before this patch:

 $ perf kvm record -e <TAB>
 $

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

After this patch:

 $ perf kvm record -e <TAB>
 alignment-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 <[email protected]>
Tested-by: Arnaldo Carvalho de Melo <[email protected]>
Cc: Paul Mackerras <[email protected]>
Cc: Peter Zijlstra <[email protected]>
Cc: Wang Nan <[email protected]>
Link: 
http://lkml.kernel.org/r/[email protected]
Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
---
 tools/perf/perf-completion.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/perf/perf-completion.sh b/tools/perf/perf-completion.sh
index 01ce841f155b..4b58ac2ae578 100644
--- a/tools/perf/perf-completion.sh
+++ b/tools/perf/perf-completion.sh
@@ -138,7 +138,7 @@ __perf_main ()
                fi
                __perfcomp "$cmds" "$cur"
        # List possible events for -e option
-       elif [[ $prev == "-e" && "${words[1]}" == @(record|stat|top) ]]; then
+       elif [[ $prev == "-e" && $prev_skip_opts == @(record|stat|top) ]]; then
                evts=$($cmd list --raw-dump)
                __perfcomp_colon "$evts" "$cur"
        else
-- 
1.9.3

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to