From: Sebastien Buisson <sebastien.buisson@bull.net>
To: Andrew Morton <akpm@linux-foundation.org>
Cc: <rob@landley.net>, <viro@zeniv.linux.org.uk>,
<linux-doc@vger.kernel.org>, <linux-kernel@vger.kernel.org>,
<linux-fsdevel@vger.kernel.org>
Subject: Re: [PATCH] Allow increasing the buffer-head per-CPU LRU size
Date: Thu, 26 Jun 2014 13:44:12 +0200 [thread overview]
Message-ID: <53AC078C.4090005@bull.net> (raw)
In-Reply-To: <20140625151638.00b7c2aa29f79f63dce7ae56@linux-foundation.org>
Le 26/06/2014 00:16, Andrew Morton a écrit :
> On Tue, 24 Jun 2014 17:52:00 +0200 Sebastien Buisson <sebastien.buisson@bull.net> wrote:
>
>> Allow increasing the buffer-head per-CPU LRU size to allow efficient
>> filesystem operations that access many blocks for each transaction.
>> For example, creating a file in a large ext4 directory with quota
>> enabled will accesses multiple buffer heads and will overflow the LRU
>> at the default 8-block LRU size:
>>
>> * parent directory inode table block (ctime, nlinks for subdirs)
>> * new inode bitmap
>> * inode table block
>> * 2 quota blocks
>> * directory leaf block (not reused, but pollutes one cache entry)
>> * 2 levels htree blocks (only one is reused, other pollutes cache)
>> * 2 levels indirect/index blocks (only one is reused)
>>
>> Make this tuning be a kernel parameter 'bh_lru_size'.
>
> I don't think it's a great idea to make this a boot-time tunable. It's
> going to take a ton of work by each and every kernel
> user/installer/distributor to work out what is the best setting for
> them. And the differences will be pretty small anyway. And we didn't
> provide them with any documentation to help them even get started with
> the project.
>
I am sorry, I meant to leave the default bh_lru_size as is, ie set to 8
(instead of 16 in my proposed patch). That way, kernel users and
integrators of all kind would not have to bother about the new boot-time
tunable, and could change nothing and stay with the same value as they
did before.
At the same time, advanced users like those playing with Lustre would
have the ability to tune the buffer-head per-CPU LRU size without the
need to recompile the kernel.
Does it sound better?
next prev parent reply other threads:[~2014-06-26 11:44 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-06-24 15:52 [PATCH] Allow increasing the buffer-head per-CPU LRU size Sebastien Buisson
2014-06-25 22:16 ` Andrew Morton
2014-06-26 11:44 ` Sebastien Buisson [this message]
2014-06-26 21:37 ` Andrew Morton
-- strict thread matches above, loose matches on Subject: below --
2014-06-27 12:25 Sebastien Buisson
2014-07-04 8:38 Sebastien Buisson
2014-07-05 7:44 ` Andreas Mohr
2014-07-06 16:18 ` Andi Kleen
2014-07-07 10:32 ` Sebastien Buisson
2014-07-07 16:30 ` Andi Kleen
2014-07-07 16:30 ` Andi Kleen
2014-07-07 22:29 ` Andrew Morton
2014-07-07 22:46 ` Andi Kleen
2014-07-08 6:28 ` Sebastien Buisson
2014-07-10 6:51 ` Sebastien Buisson
2014-07-10 7:07 ` Andrew Morton
2014-07-10 7:29 ` Sebastien Buisson
2014-07-10 7:29 ` Sebastien Buisson
2014-07-10 14:17 ` Andi Kleen
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=53AC078C.4090005@bull.net \
--to=sebastien.buisson@bull.net \
--cc=akpm@linux-foundation.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=rob@landley.net \
--cc=viro@zeniv.linux.org.uk \
/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.