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]
Message-ID: <4D2EDBE4.3060608@hitachi.com>
Date:	Thu, 13 Jan 2011 20:03:00 +0900
From:	Masami Hiramatsu <masami.hiramatsu.pt@...achi.com>
To:	Franck Bui-Huu <vagabon.xyz@...il.com>
Cc:	Arnaldo Carvalho de Melo <acme@...stprotocols.net>,
	lkml <linux-kernel@...r.kernel.org>,
	2nddept-manager@....hitachi.co.jp
Subject: Re: [PATCH] perf-probe: make "perf-probe -L <function>" display the
 absolute path and absolute line number

(2011/01/13 19:20), Franck Bui-Huu wrote:
> From: Franck Bui-Huu <fbuihuu@...il.com>
> 
> It should be more usefull to get the full location of the function
> (absolute line number + full path) instead of repeating the name of
> the function and the start line number given by the command line.
> 
> So we had before:
> 
>    $ perf probe -L schedule | head -n3
>    <schedule:0>
>          0  asmlinkage void __sched schedule(void)
>          1  {
> 
> and now we get:
> 
>    $ perf probe -L schedule | head -n3
>    </usr/src/debug/kernel-2.6.35.fc14/linux-2.6.35.x86_64/kernel/sched.c:3813>
>          0  asmlinkage void __sched schedule(void)
>          1  {

Indeed, it could be useful for users to see where the function is...

However, I think that should be optional, because the output lines
have the relative line numbers from the function, and those numbers
are important for users who want to probe a specific line by using
function relative line numbers. e.g. "schedule:10"

And with that option, I'd suggest to show absolute line numbers on each line.

  $ perf probe -L schedule:0-1 --by-source
  </usr/src/debug/kernel-2.6.35.fc14/linux-2.6.35.x86_64/kernel/sched.c:3813>
     3813  asmlinkage void __sched schedule(void)
     3814  {

Or, just show source file as an additional information.

  $ perf probe -L schedule:0-1
  <schedule@...r/src/debug/kernel-2.6.35.fc14/linux-2.6.35.x86_64/kernel/sched.c:0>
        0  asmlinkage void __sched schedule(void)
        1  {

I just would like to keep the consistency of the output/input format.
In above cases, users can define a new event just by replacing the last
number with the line number which they see.

Thank you,

> 
> Signed-off-by: Franck Bui-Huu <fbuihuu@...il.com>
> ---
>  tools/perf/util/probe-event.c |    6 +-----
>  1 files changed, 1 insertions(+), 5 deletions(-)
> 
> diff --git a/tools/perf/util/probe-event.c b/tools/perf/util/probe-event.c
> index fcbb543..bd09b87 100644
> --- a/tools/perf/util/probe-event.c
> +++ b/tools/perf/util/probe-event.c
> @@ -382,11 +382,7 @@ int show_line_range(struct line_range *lr, const char *module)
>  
>  	setup_pager();
>  
> -	if (lr->function)
> -		fprintf(stdout, "<%s:%d>\n", lr->function,
> -			lr->start - lr->offset);
> -	else
> -		fprintf(stdout, "<%s:%d>\n", lr->path, lr->start);
> +	fprintf(stdout, "<%s:%d>\n", lr->path, lr->start);
>  
>  	fp = fopen(lr->path, "r");
>  	if (fp == NULL) {


-- 
Masami HIRAMATSU
2nd Dept. Linux Technology Center
Hitachi, Ltd., Systems Development Laboratory
E-mail: masami.hiramatsu.pt@...achi.com
--
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