lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Sat, 3 Oct 2009 03:54:45 +0200
From:	Frederic Weisbecker <fweisbec@...il.com>
To:	Masami Hiramatsu <mhiramat@...hat.com>
Cc:	Steven Rostedt <rostedt@...dmis.org>, Ingo Molnar <mingo@...e.hu>,
	lkml <linux-kernel@...r.kernel.org>,
	systemtap <systemtap@...rces.redhat.com>,
	DLE <dle-develop@...ts.sourceforge.net>,
	Thomas Gleixner <tglx@...utronix.de>,
	Arnaldo Carvalho de Melo <acme@...hat.com>,
	Mike Galbraith <efault@....de>,
	Paul Mackerras <paulus@...ba.org>,
	Peter Zijlstra <a.p.zijlstra@...llo.nl>,
	Christoph Hellwig <hch@...radead.org>,
	Ananth N Mavinakayanahalli <ananth@...ibm.com>,
	Jim Keniston <jkenisto@...ibm.com>,
	"Frank Ch. Eigler" <fche@...hat.com>
Subject: Re: [PATCH tracing/kprobes v2 1/5] tracing/kprobes: Rename special
	variables syntax

On Fri, Oct 02, 2009 at 05:48:42PM -0400, Masami Hiramatsu wrote:
> Add $ prefix to the special variables(e.g. sa, rv) of kprobe-tracer.
> This resolves consistency issue between kprobe_events and perf-kprobe.
> 
> Signed-off-by: Masami Hiramatsu <mhiramat@...hat.com>
> Cc: Frederic Weisbecker <fweisbec@...il.com>
> Cc: Ingo Molnar <mingo@...e.hu>
> Cc: Thomas Gleixner <tglx@...utronix.de>
> Cc: Arnaldo Carvalho de Melo <acme@...hat.com>
> Cc: Steven Rostedt <rostedt@...dmis.org>
> Cc: Mike Galbraith <efault@....de>
> Cc: Paul Mackerras <paulus@...ba.org>
> Cc: Peter Zijlstra <a.p.zijlstra@...llo.nl>
> Cc: Christoph Hellwig <hch@...radead.org>
> Cc: Ananth N Mavinakayanahalli <ananth@...ibm.com>
> Cc: Jim Keniston <jkenisto@...ibm.com>
> Cc: Frank Ch. Eigler <fche@...hat.com>
> ---
> 
>  Documentation/trace/kprobetrace.txt |   10 +++---
>  kernel/trace/trace_kprobe.c         |   60 ++++++++++++++++++++++-------------
>  2 files changed, 42 insertions(+), 28 deletions(-)
> 
> diff --git a/Documentation/trace/kprobetrace.txt b/Documentation/trace/kprobetrace.txt
> index 9b8f7c6..40caef0 100644
> --- a/Documentation/trace/kprobetrace.txt
> +++ b/Documentation/trace/kprobetrace.txt
> @@ -36,13 +36,13 @@ Synopsis of kprobe_events
>  
>   FETCHARGS	: Arguments. Each probe can have up to 128 args.
>    %REG	: Fetch register REG
> -  sN	: Fetch Nth entry of stack (N >= 0)
> -  sa	: Fetch stack address.
>    @ADDR	: Fetch memory at ADDR (ADDR should be in kernel)
>    @SYM[+|-offs]	: Fetch memory at SYM +|- offs (SYM should be a data symbol)
> -  aN	: Fetch function argument. (N >= 0)(*)
> -  rv	: Fetch return value.(**)
> -  ra	: Fetch return address.(**)
> +  $sN	: Fetch Nth entry of stack (N >= 0)
> +  $sa	: Fetch stack address.
> +  $aN	: Fetch function argument. (N >= 0)(*)
> +  $rv	: Fetch return value.(**)
> +  $ra	: Fetch return address.(**)



I feel uncomfortable with that, because of bash scripts that
may use it and always need to escape it with antislashes or
use single quotes for it to not be replaced by a random variable
value. If one uses double quotes without antislashes to protect
the command line, the result is unpredictable, depending of
the current set of variables...

May be we can use # instead of $ ? That's a kind of pity because
$ suggested a variable whereas # suggests a constant, we are then
losing this self-explainable characteristic for kprobes
"specific variable fetchs". But that will work without ambiguity.

I hope someone else has a better idea...

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

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ