From patchwork Sat Apr 17 00:46:35 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Steven Rostedt X-Patchwork-Id: 12209399 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.7 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 67A44C433B4 for ; Sat, 17 Apr 2021 00:46:41 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 47995611AB for ; Sat, 17 Apr 2021 00:46:41 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S235054AbhDQArG (ORCPT ); Fri, 16 Apr 2021 20:47:06 -0400 Received: from ex13-edg-ou-001.vmware.com ([208.91.0.189]:2067 "EHLO EX13-EDG-OU-001.vmware.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229719AbhDQArF (ORCPT ); Fri, 16 Apr 2021 20:47:05 -0400 Received: from sc9-mailhost1.vmware.com (10.113.161.71) by EX13-EDG-OU-001.vmware.com (10.113.208.155) with Microsoft SMTP Server id 15.0.1156.6; Fri, 16 Apr 2021 17:46:35 -0700 Received: from vypre.com (unknown [10.21.244.206]) by sc9-mailhost1.vmware.com (Postfix) with ESMTP id B34EC2045F; Fri, 16 Apr 2021 17:46:39 -0700 (PDT) From: Steven Rostedt To: CC: "Steven Rostedt (VMware)" Subject: [PATCH 1/3] trace-cmd record: Add bash tab completion for -A Date: Fri, 16 Apr 2021 20:46:35 -0400 Message-ID: <20210417004637.3899514-2-rostedt@goodmis.org> X-Mailer: git-send-email 2.29.2 In-Reply-To: <20210417004637.3899514-1-rostedt@goodmis.org> References: <20210417004637.3899514-1-rostedt@goodmis.org> MIME-Version: 1.0 Received-SPF: None (EX13-EDG-OU-001.vmware.com: rostedt@goodmis.org does not designate permitted sender hosts) Precedence: bulk List-ID: X-Mailing-List: linux-trace-devel@vger.kernel.org From: "Steven Rostedt (VMware)" Add a virsh lookup of guest names when -A is the option for trace-cmd record and tab is done. Signed-off-by: Steven Rostedt (VMware) --- tracecmd/trace-cmd.bash | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/tracecmd/trace-cmd.bash b/tracecmd/trace-cmd.bash index 85f6743b..e89c1a55 100644 --- a/tracecmd/trace-cmd.bash +++ b/tracecmd/trace-cmd.bash @@ -9,6 +9,17 @@ show_instances() return 0 } +show_virt() +{ + local cur="$1" + if ! which virsh &>/dev/null; then + return 1 + fi + local virt=`virsh list | awk '/^ *[0-9]/ { print $2 }'` + COMPREPLY=( $(compgen -W "${virt}" -- "${cur}") ) + return 0 +} + show_options() { local cur="$1" @@ -159,6 +170,11 @@ __trace_cmd_record_complete() -O) show_options "$cur" ;; + -A) + if ! show_virt "$cur"; then + cmd_options record "$cur" + fi + ;; *) # stream start and profile do not show all options cmd_options record "$cur" From patchwork Sat Apr 17 00:46:36 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Steven Rostedt X-Patchwork-Id: 12209403 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.7 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id E2DD2C43460 for ; Sat, 17 Apr 2021 00:46:41 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id C1BA66101E for ; Sat, 17 Apr 2021 00:46:41 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S235111AbhDQArG (ORCPT ); Fri, 16 Apr 2021 20:47:06 -0400 Received: from ex13-edg-ou-002.vmware.com ([208.91.0.190]:40218 "EHLO EX13-EDG-OU-002.vmware.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229719AbhDQArG (ORCPT ); Fri, 16 Apr 2021 20:47:06 -0400 Received: from sc9-mailhost1.vmware.com (10.113.161.71) by EX13-EDG-OU-002.vmware.com (10.113.208.156) with Microsoft SMTP Server id 15.0.1156.6; Fri, 16 Apr 2021 17:46:36 -0700 Received: from vypre.com (unknown [10.21.244.206]) by sc9-mailhost1.vmware.com (Postfix) with ESMTP id 6C9412045F; Fri, 16 Apr 2021 17:46:40 -0700 (PDT) From: Steven Rostedt To: CC: "Steven Rostedt (VMware)" Subject: [PATCH 2/3] trace-cmd record: Update -e event bash tab completion Date: Fri, 16 Apr 2021 20:46:36 -0400 Message-ID: <20210417004637.3899514-3-rostedt@goodmis.org> X-Mailer: git-send-email 2.29.2 In-Reply-To: <20210417004637.3899514-1-rostedt@goodmis.org> References: <20210417004637.3899514-1-rostedt@goodmis.org> MIME-Version: 1.0 Received-SPF: None (EX13-EDG-OU-002.vmware.com: rostedt@goodmis.org does not designate permitted sender hosts) Precedence: bulk List-ID: X-Mailing-List: linux-trace-devel@vger.kernel.org From: "Steven Rostedt (VMware)" Update the tab completion to find events instead of needing to know the systems. Signed-off-by: Steven Rostedt (VMware) --- tracecmd/trace-cmd.bash | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/tracecmd/trace-cmd.bash b/tracecmd/trace-cmd.bash index e89c1a55..9b0703b7 100644 --- a/tracecmd/trace-cmd.bash +++ b/tracecmd/trace-cmd.bash @@ -142,10 +142,16 @@ __trace_cmd_record_complete() case "$prev" in -e) - local events=$(trace-cmd list -e) + local list=$(trace-cmd list -e "$cur") local prefix=${cur%%:*} + if [ -z "$cur" -o "$cur" != "$prefix" ]; then + COMPREPLY=( $(compgen -W "all ${list}" -- "${cur}") ) + else + local events=$(for e in $list; do echo ${e/*:/}; done | sort -u) + local systems=$(for s in $list; do echo ${s/:*/:}; done | sort -u) - COMPREPLY=( $(compgen -W "${events}" -- "${cur}") ) + COMPREPLY=( $(compgen -W "all ${events} ${systems}" -- "${cur}") ) + fi # This is still to handle the "*:*" special case if [[ -n "$prefix" ]]; then From patchwork Sat Apr 17 00:46:37 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Steven Rostedt X-Patchwork-Id: 12209401 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.7 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 6118DC43462 for ; Sat, 17 Apr 2021 00:46:42 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 458CB611C2 for ; Sat, 17 Apr 2021 00:46:42 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S235137AbhDQArH (ORCPT ); Fri, 16 Apr 2021 20:47:07 -0400 Received: from ex13-edg-ou-002.vmware.com ([208.91.0.190]:40219 "EHLO EX13-EDG-OU-002.vmware.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229719AbhDQArG (ORCPT ); Fri, 16 Apr 2021 20:47:06 -0400 Received: from sc9-mailhost1.vmware.com (10.113.161.71) by EX13-EDG-OU-002.vmware.com (10.113.208.156) with Microsoft SMTP Server id 15.0.1156.6; Fri, 16 Apr 2021 17:46:36 -0700 Received: from vypre.com (unknown [10.21.244.206]) by sc9-mailhost1.vmware.com (Postfix) with ESMTP id 25FD020396; Fri, 16 Apr 2021 17:46:41 -0700 (PDT) From: Steven Rostedt To: CC: "Steven Rostedt (VMware)" Subject: [PATCH 3/3] trace-cmd completion: Add instance completion for -B Date: Fri, 16 Apr 2021 20:46:37 -0400 Message-ID: <20210417004637.3899514-4-rostedt@goodmis.org> X-Mailer: git-send-email 2.29.2 In-Reply-To: <20210417004637.3899514-1-rostedt@goodmis.org> References: <20210417004637.3899514-1-rostedt@goodmis.org> MIME-Version: 1.0 Received-SPF: None (EX13-EDG-OU-002.vmware.com: rostedt@goodmis.org does not designate permitted sender hosts) Precedence: bulk List-ID: X-Mailing-List: linux-trace-devel@vger.kernel.org From: "Steven Rostedt (VMware)" All commands but trace-cmd list use -B for instances. Since the list command already has its own logic, make the default logic for all other commands search the instances when -B is the previous command to complete. Signed-off-by: Steven Rostedt (VMware) --- tracecmd/trace-cmd.bash | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/tracecmd/trace-cmd.bash b/tracecmd/trace-cmd.bash index 9b0703b7..b01c7a07 100644 --- a/tracecmd/trace-cmd.bash +++ b/tracecmd/trace-cmd.bash @@ -225,7 +225,8 @@ __trace_cmd_dump_complete() __show_command_options() { local command="$1" - local cur="$2" + local prev="$2" + local cur="$3" local cmds=( $(trace-cmd --help 2>/dev/null | \ grep " - " | sed 's/^ *//; s/ -.*//') ) @@ -233,7 +234,15 @@ __show_command_options() if [ $cmd == "$command" ]; then local opts=$(trace-cmd $cmd -h 2>/dev/null|grep "^ *-" | \ sed -e 's/ *\(-[^ ]*\).*/\1/') - COMPREPLY=( $(compgen -W "${opts}" -- "$cur") ) + if [ "$prev" == "-B" ]; then + for opt in ${opts[@]}; do + if [ "$opt" == "-B" ]; then + show_instances "$cur" + return 0 + fi + done + fi + COMPREPLY=( $(compgen -W "${opts}" -- "$cur")) return 0 fi done @@ -290,7 +299,7 @@ _trace_cmd_complete() return 0 ;; *) - __show_command_options "$w" "${cur}" + __show_command_options "$w" "${prev}" "${cur}" ;; esac }