From: Eric Sandeen <sandeen@redhat.com>
To: Andreas Dilger <adilger@dilger.ca>
Cc: "Ted Ts'o" <tytso@mit.edu>,
ext4 development <linux-ext4@vger.kernel.org>,
Wei Yongjun <yjwei@cn.fujitsu.com>
Subject: Re: Any qualms about reverting 3d0518f4, ext4: New rec_len encoding for very large blocksizes ?
Date: Wed, 04 Aug 2010 09:21:55 -0500 [thread overview]
Message-ID: <4C597783.8090609@redhat.com> (raw)
In-Reply-To: <E451F0D5-F2FB-44A1-BA84-224D7F86F447@dilger.ca>
Andreas Dilger wrote:
> On 2010-08-03, at 17:12, Ted Ts'o wrote:
>> On Tue, Aug 03, 2010 at 05:49:22PM -0500, Eric Sandeen wrote:
>>> As far as I know, reverting it won't break 64kb dir blocks...?
>> I seem to recall there was some confusion about what was the
>> correct way of recording a rec_len of 64k --- 0 or 65535. So after
>> reverting the patch, we need to make sure we didn't end up breaking
>> compatibility with (a) existing file systems and (b) what older
>> versions of mke2fs may have generated.
>
> Right - the newer code accepts both EXT4_MAX_REC_LEN and 0 to mean
> "blocksize". The old code took EXT4_MAX_REC_LEN to mean "1 << 16".
> For filesystems with blocksize < 64k there is no difference, but I
> think it makes sense to continue to accept both EXT4_MAX_REC_LEN and
> "0".
>
>>>>> (this does 200 iterations) and got this for the file
>>>>> creations:
>>>>>
>>>>> ext4 stock: Average = 21206.8 files/s ext4 patched: Average
>>>>> = 22822.1 files/s
>>>>>
>>>>> This is a 7.6% improvement...
>> So one way of dealing wih this is making it an inline, and then
>> #ifdef'ing out the more complex code if the page size is < 64k....
Ok, I'd thought about that route too (#ifdef, or whatnot) -
I'll see if I can work it out that way.
However, #ifdef on PAGE_CACHE_SIZE didn't seem to quite work, as the
original motivation was for the "whenever the VM allows block
size > page size" case, I think...
-Eric
> Should it also be put under "unlikely()", or for that matter, the
> whole thing could be #ifdef'd out for PAGE_SIZE < 65536 since we
> won't magically grow blocksize > PAGE_SIZE support without knowing
> it.
> Cheers, Andreas
prev parent reply other threads:[~2010-08-04 14:22 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-08-03 22:30 Any qualms about reverting 3d0518f4, ext4: New rec_len encoding for very large blocksizes ? Eric Sandeen
2010-08-03 22:44 ` Andreas Dilger
2010-08-03 22:49 ` Eric Sandeen
2010-08-03 23:12 ` Ted Ts'o
2010-08-04 0:33 ` Andreas Dilger
2010-08-04 14:21 ` Eric Sandeen [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=4C597783.8090609@redhat.com \
--to=sandeen@redhat.com \
--cc=adilger@dilger.ca \
--cc=linux-ext4@vger.kernel.org \
--cc=tytso@mit.edu \
--cc=yjwei@cn.fujitsu.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.