From: Goffredo Baroncelli <kreijack@libero.it>
To: Li Zefan <lizf@cn.fujitsu.com>, linux-btrfs@vger.kernel.org
Subject: Re: [RFC][PATCH] Btrfs: New inode number allocator
Date: Wed, 26 Jan 2011 19:30:01 +0100 [thread overview]
Message-ID: <4D406829.3040700@libero.it> (raw)
In-Reply-To: <4D3F7E7C.6080903@cn.fujitsu.com>
On 01/26/2011 02:53 AM, Li Zefan wrote:
> Here comes the compatability issue. It's fine to mount old btrfs, because
> we'll just use the original way to find free ino. But we can't mount new btrfs
> in older kernels, because the OFFSET makes highest objectid overflow when it
> is cast to unsigned long in 32bits system.
>
> We can store ino extents to a seperate btree, and then the new btrfs can
> be mounted in older kernels, but another problem will arise when remounting it
> in new kernels - creating new files will probably fail (but not oops)
> because the ino extent items are not consistent with inode items.
>
> If the above behavior (failing to create files) is not acceptable, we'll
> have to add an incompat flag.
I can't comment the patch from a technical point of view. However I want
to add a my comment about the compatibility issues.
I remember that Linus was not happy about a filesystem which is not
compatible when the the kernel version decrease. IIRC during the switch
from ext3 to ext4 there were some issues during a git bis-sect process.
So my suggestions are:
- don't allow that an automatic switch to the new inode allocation
policy. It should be the user to force this switch ( via a mount option
for example)
- in case the performance regression are noticeable, allow the user to
use the old policy, which, if I understood correctly, work fine on a 64
bit system [*].
Regards
G.Baroncelli
[*] Supposing to create continuously 1000 file per sec, it needs
2^64/1000 sec = ~ 573.000.000 years to exhaust all the available inode
numbers.
next prev parent reply other threads:[~2011-01-26 18:30 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-01-26 1:53 [RFC][PATCH] Btrfs: New inode number allocator Li Zefan
2011-01-26 18:30 ` Goffredo Baroncelli [this message]
2011-01-26 19:56 ` Chris Mason
2011-01-27 7:10 ` Li Zefan
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=4D406829.3040700@libero.it \
--to=kreijack@libero.it \
--cc=kreijack@inwind.it \
--cc=linux-btrfs@vger.kernel.org \
--cc=lizf@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.