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: <alpine.DEB.1.10.0811270905310.18691@gandalf.stny.rr.com>
Date:	Thu, 27 Nov 2008 09:07:38 -0500 (EST)
From:	Steven Rostedt <rostedt@...dmis.org>
To:	Ingo Molnar <mingo@...e.hu>
cc:	Peter Zijlstra <a.p.zijlstra@...llo.nl>,
	Frederic Weisbecker <fweisbec@...il.com>,
	Tim Bird <tim.bird@...sony.com>,
	Linux Kernel <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH] tracing/function-branch-tracer: enhancements for the
 trace output


On Thu, 27 Nov 2008, Ingo Molnar wrote:

> 
> mockup:
> 
> ----------------------------------------------------------------
> CPU)     task-PID   |     cost    |  function
> ----------------------------------------------------------------
> 
>   0)     bash-54320 |             |  sys_read() {
>   0)     bash-54320 |    0.331 us |    fget_light();
>   0)     bash-54320 |             |    vfs_read() {
>   0) mycomman-1234  |             |      rw_verify_area() {
>   0) mycomman-1234  |  121.444 us |        func();
> 
> Note some details:
> 
> 1) longer comm names can be stripped off at 7 chars - 7 chars is 
>    enough to recognize most of the things and the PID is good enough 
>    for extra separation)
> 
> 2) the ssssssss-12345 task identifier is _center_ aligned. It's a rare 
>    alignment case but useful here: most people look at the command 
>    portion and the whole string must be greppable and useful in traces 
>    as an identifier - so right-aligning the PID is not a good 
>    solution.
> 
> 3) there's vertical separation after the task portion as well. This 
>    helps us ignore the task portion when we want to look at only the 
>    code and the cost of it. (the common case)
> 
> > comm/pid only in the separator is useless, you cannot grep stuff 
> > like that, also, what's up with those '8's ?
> 
> yeah, that context-switch separator is horrible.
> 
> We can keep the separator, but as something saner, like:
> 
> ---------------------------------------------------------
> CPU)     cost    |  function
> ---------------------------------------------------------
> 
>   0)             |  sys_read() {
>   0)    0.331 us |    fget_light();
>   0)             |    vfs_read() {
>   0)             |      rw_verify_area() {
>   0)             |        security_file_permission() {
>   0)    0.306 us |          cap_file_permission();
>   0)    0.300 us |          cap_file_permission();
>   0)    8.909 us |        }
>   0)    0.993 us |      }
>   0)   11.649 us |    }
>   0)             |    do_sync_read() {
>                  .   -------------------------
>   0)             ==> [ bash-2794 => cat-1234 ]
>                      -------------------------
> 
>   0)             |        __sock_recvmsg() {
>   0)             |          security_socket_recvmsg() {
>   0)  100.319 us |            cap_socket_recvmsg();
> ---------------------------------------------------------

Yes please. I like the separator better. Sure, we could add a trace_option
that will let us print the name on all lines, which will make it grepable
better. But this is better to see when the switch happens.

Also, Frederic could use my ftrace_trace_pid to filter only on a single 
thread. But that will need to wait till we figure out this namespace 
issue.

-- Steve

--
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