From: Frederic Weisbecker <fweisbec@gmail.com>
To: Stephen Hemminger <shemminger@vyatta.com>
Cc: Frans Pop <elendil@planet.nl>, Nick Piggin <npiggin@suse.de>,
jens.axboe@oracle.com, linux-kernel@vger.kernel.org,
linux-fsdevel@vger.kernel.org,
Andrew Morton <akpm@linux-foundation.org>
Subject: Re: Mount -o sync regression in 2.6.31
Date: Sat, 14 Nov 2009 14:18:09 +0100 [thread overview]
Message-ID: <20091114131804.GA5245@nowhere> (raw)
In-Reply-To: <20091113144727.575cf038@nehalam>
On Fri, Nov 13, 2009 at 02:47:27PM -0800, Stephen Hemminger wrote:
> Bisecting between 2.6.30 and 2.6.31-rc1 reduced it down to:
>
> 8f184f27300f66f6dcc8296c2dae7a1fbe8429c9 is first bad commit
> commit 8f184f27300f66f6dcc8296c2dae7a1fbe8429c9
> Author: Frederic Weisbecker <fweisbec@gmail.com>
> Date: Sat May 16 06:24:36 2009 +0200
>
> tracing/stat: replace linked list by an rbtree for sorting
>
> When the stat tracing framework prepares the entries from a tracer
> to output them to the user, it starts by computing a linear sort
> through a linked list to give the entries ordered by relevance
> to the user.
>
> This is quite ugly and causes a small latency when we begin to
> read the file.
>
> This patch changes that by turning the linked list into a red-black
> tree. Athough the whole iteration using the start and next tracer
> callbacks while opening the file remain the same, it is now much
> more fast and scalable.
>
> The rbtree guarantees O(log(n)) insertions whereas a linked
> list with linear sorting brought us a O(n) despair. Now the
> (visible) latency has disapeared.
>
> [ Impact: kill the latency while starting to read a stat tracer file ]
>
> Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com>
>
> Which seems totally out of the path related to this, and no tracing is being done!
The trace stat thing is only used for workqueue profiling,
functions profiling, branch profiling:
CONFIG_WORKQUEUE_TRACER
CONFIG_FUNCTION_PROFILER
CONFIG_PROFILE_ANNOTATED_BRANCHES
CONFIG_PROFILE_ALL_BRANCHES
And none of them seem enabled in your config.
prev parent reply other threads:[~2009-11-14 13:18 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-11-11 20:33 Mount -o sync regression in 2.6.31 Stephen Hemminger
2009-11-11 21:34 ` Frans Pop
2009-11-11 22:20 ` Stephen Hemminger
2009-11-13 22:47 ` Stephen Hemminger
2009-11-13 23:07 ` Andrew Morton
2009-11-13 23:28 ` Stephen Hemminger
2009-11-17 0:04 ` [PATCH] ext2: clear uptodate flag on super block I/O error Stephen Hemminger
2009-11-17 2:08 ` Nick Piggin
2009-11-17 17:16 ` Stephen Hemminger
2009-11-14 13:18 ` 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=20091114131804.GA5245@nowhere \
--to=fweisbec@gmail.com \
--cc=akpm@linux-foundation.org \
--cc=elendil@planet.nl \
--cc=jens.axboe@oracle.com \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=npiggin@suse.de \
--cc=shemminger@vyatta.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.