Patchwork tracetool: Add optional argument to specify dtrace probe names

login
register
mail settings
Submitter Jes Sorensen
Date Feb. 15, 2011, 10:10 a.m.
Message ID <1297764622-25287-1-git-send-email-Jes.Sorensen@redhat.com>
Download mbox | patch
Permalink /patch/83230/
State New
Headers show

Comments

Jes Sorensen - Feb. 15, 2011, 10:10 a.m.
From: Jes Sorensen <Jes.Sorensen@redhat.com>

Optional feature allowing a user to generate the probe list to match
the name of the binary, in case they wish to install qemu under a
Stefan Hajnoczi - Feb. 15, 2011, 11:33 a.m.
On Tue, Feb 15, 2011 at 11:10:22AM +0100, Jes.Sorensen@redhat.com wrote:
> From: Jes Sorensen <Jes.Sorensen@redhat.com>
> 
> Optional feature allowing a user to generate the probe list to match
> the name of the binary, in case they wish to install qemu under a
> different name than qemu-{system,user},<arch>
> 
> Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
> ---
>  scripts/tracetool |   14 ++++++++++----
>  1 files changed, 10 insertions(+), 4 deletions(-)
> 
> diff --git a/scripts/tracetool b/scripts/tracetool
> index e046683..0200afa 100755
> --- a/scripts/tracetool
> +++ b/scripts/tracetool
> @@ -33,6 +33,7 @@ Options:
>    --binary      [path]  Full path to QEMU binary
>    --target-arch [arch]  QEMU emulator target arch
>    --target-type [type]  QEMU emulator target type ('system' or 'user')
> +  --probe-name  [name]  Specify alternative name for dtrace probes

It's not obvious to me what --probe-name does given this description.
How about:

--probe-prefix [prefix]  Prefix for dtrace probe names (default: qemu-$targettype-$targetarch)

Stefan

Patch

different name than qemu-{system,user},<arch>

Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
---
 scripts/tracetool |   14 ++++++++++----
 1 files changed, 10 insertions(+), 4 deletions(-)

diff --git a/scripts/tracetool b/scripts/tracetool
index e046683..0200afa 100755
--- a/scripts/tracetool
+++ b/scripts/tracetool
@@ -33,6 +33,7 @@  Options:
   --binary      [path]  Full path to QEMU binary
   --target-arch [arch]  QEMU emulator target arch
   --target-type [type]  QEMU emulator target type ('system' or 'user')
+  --probe-name  [name]  Specify alternative name for dtrace probes
 
 EOF
     exit 1
@@ -472,7 +473,7 @@  linetostap_dtrace()
 
     # Define prototype for probe arguments
     cat <<EOF
-probe qemu.$targettype.$targetarch.$name = process("$binary").mark("$name")
+probe $probename.$name = process("$binary").mark("$name")
 {
 EOF
 
@@ -570,18 +571,21 @@  tracetostap()
        echo "SystemTAP tapset generator not applicable to $backend backend"
        exit 1
     fi
-    if [ -z "$binary" ]; then
+    if [ -z "$probename" -a -z "$binary" ]; then
        echo "--binary is required for SystemTAP tapset generator"
        exit 1
     fi
-    if [ -z "$targettype" ]; then
+    if [ -z "$probename" -a -z "$targettype" ]; then
        echo "--target-type is required for SystemTAP tapset generator"
        exit 1
     fi
-    if [ -z "$targetarch" ]; then
+    if [ -z "$probename" -a -z "$targetarch" ]; then
        echo "--target-arch is required for SystemTAP tapset generator"
        exit 1
     fi
+    if [ -z "$probename" ]; then
+	probename="qemu.$targettype.$targetarch";
+    fi
     echo "/* This file is autogenerated by tracetool, do not edit. */"
     convert stap
 }
@@ -592,6 +596,7 @@  output=
 binary=
 targettype=
 targetarch=
+probename=
 
 
 until [ -z "$1" ]
@@ -602,6 +607,7 @@  do
     "--binary") shift ; binary="$1" ;;
     "--target-arch") shift ; targetarch="$1" ;;
     "--target-type") shift ; targettype="$1" ;;
+    "--probe-name") shift ; probename="$1" ;;
 
     "-h" | "-c" | "-d") output="${1#-}" ;;
     "--stap") output="${1#--}" ;;