From: Frederic Weisbecker <fweisbec@gmail.com>
To: Li Zefan <lizf@cn.fujitsu.com>
Cc: Ingo Molnar <mingo@elte.hu>, Steven Rostedt <rostedt@goodmis.org>,
LKML <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH 1/3] tracing/stat: sort in ascending order
Date: Tue, 26 May 2009 22:46:49 +0200 [thread overview]
Message-ID: <20090526204647.GF5969@nowhere> (raw)
In-Reply-To: <4A1B4144.9060201@cn.fujitsu.com>
On Tue, May 26, 2009 at 09:09:24AM +0800, Li Zefan wrote:
> Frederic Weisbecker wrote:
> > On Mon, May 25, 2009 at 04:46:09PM +0800, Li Zefan wrote:
> >> Currently the output of trace_stat/workqueues is totally reversed:
> >>
> >> # cat /debug/tracing/trace_stat/workqueues
> >> ...
> >> 1 17 17 210 37 `-blk_unplug_work+0x0/0x57
> >> 1 3779 3779 181 11 |-cfq_kick_queue+0x0/0x2f
> >> 1 3796 3796 kblockd/1:120
> >> ...
> >>
> >> The correct output should be:
> >>
> >> 1 3796 3796 kblockd/1:120
> >> 1 3779 3779 181 11 |-cfq_kick_queue+0x0/0x2f
> >> 1 17 17 210 37 `-blk_unplug_work+0x0/0x57
> >>
> >> It's caused by "tracing/stat: replace linked list by an rbtree for sorting"
> >> (53059c9b67a62a3dc8c80204d3da42b9267ea5a0).
> >>
> >> Though we can simply change dummy_cmp() to return -1 instead of 1, IMO
> >> it's better to always do ascending sorting in trace_stat.c, and leave each
> >> stat tracer to decide whether to sort in descending or ascending order.
> >>
> >> [ Impact: fix the output of trace_stat/workqueue ]
> >>
> >> Signed-off-by: Li Zefan <lizf@cn.fujitsu.com>
> >
> >
> > For now in stat tracing, the ascendent sorting is the most relevant.
> > Especially because we always want to see the highest problems first.
> >
>
> Yeah, I saw this.
>
> > -1 (or < 0) usually means lower and 1 ( > 0) is higher.
> >
> > I wonder what would most confuse the developers of stat tracers:
> >
> > - to reverse these common sort values (-1 turn into "higher")
> > - keep the default ascendent sorting, which is not natural because the default
> > is often descendent.
> >
> > I don't know.
> >
> > Anyone else. Do you have a preference?
> >
>
> When I looked into this bug, I was confused why it's descending sorting, though
> then I found out the answer.
>
> Imagine a new stat tracer wants to sort in ascending order, but it has to define
> a cmp which compares in reverse order. This seems to be odd and confusing.
>
> But to be honest, I'm also not sure which is better, And it doesn't seem to be
> a big issue. So I think I'll make concessions.
Ok, so let's keep it as is and we'll see if developers complain :)
prev parent reply other threads:[~2009-05-26 20:47 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-05-25 8:46 [PATCH 1/3] tracing/stat: sort in ascending order Li Zefan
2009-05-25 8:46 ` [PATCH 2/3] tracing/stat: simplify rbtree freeing code Li Zefan
2009-05-25 15:59 ` Frederic Weisbecker
2009-05-26 1:16 ` Li Zefan
2009-05-26 19:33 ` Frederic Weisbecker
2009-05-25 8:46 ` [PATCH 3/3] tracing/stat: do some cleanups Li Zefan
2009-05-25 15:42 ` [PATCH 1/3] tracing/stat: sort in ascending order Frederic Weisbecker
2009-05-26 1:09 ` Li Zefan
2009-05-26 20:46 ` Frederic Weisbecker [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20090526204647.GF5969@nowhere \
--to=fweisbec@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=lizf@cn.fujitsu.com \
--cc=mingo@elte.hu \
--cc=rostedt@goodmis.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox