linux-ext4.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Tao Ma <tm@tao.ma>
To: Andreas Dilger <aedilger@gmail.com>
Cc: Theodore Tso <tytso@mit.edu>,
	linux-ext4 development <linux-ext4@vger.kernel.org>,
	Alex Zhuravlev <bzzz@whamcloud.com>
Subject: Re: bigalloc and max file size
Date: Thu, 27 Oct 2011 09:05:49 +0800	[thread overview]
Message-ID: <4EA8AE6D.6050907@tao.ma> (raw)
In-Reply-To: <51BECC2B-2EBC-4FCB-B708-8431F7CB6E0D@dilger.ca>

Hi Andreas,
On 10/27/2011 07:36 AM, Andreas Dilger wrote:
> Ted,
> we were having a discussion about bigalloc and the maximum file size
> (as limited by the 2^32 logical block number in struct ext4_extent).
> 
> Currently the maximum file size is blocksize * 2^32, 16TB for 4kB blocks.
> 
> Since it is not possible to allocate sub-blocks in the bigalloc code,
> what about storing the "chunk number" in the extent logical block?
> This would allow us to create files up to chunksize * 2^32.  With
> a bigalloc chunk size of 1MB we could have a maximum file size of
> 2^(20 + 32) = 2^52 = 4PB, which is within spitting distance of the
> maximum filesystem size of 2^56 bytes (4kB blocks * 2^48 blocks)
> with the current extent format, and beyond reasonable limits today.
> 
> This essentially allows creating files as large as the filesystem size
> without having to change the extent format, which is a good thing.
> 
> Is this implemented in bigalloc?  If not, it would be great to do
> this before landing bigalloc in the upstream kernel, since it is
> basically free to do, can already fall under the INCOMPAT_BIGALLOC
> feature flag, and avoids issues in the near future.  I don't think
> the e2fsprogs with bigalloc support is released yet either, so it
> should still be OK to change the on-disk format?
That is also our need here. ;) We have asked Ted about it, and Ted had
expressed his concern. Please searched the mailist for the subject
"Question about BIGALLOC".

ocfs2 has implemented similar mechanism for the file's extents and it
seems to work by now. But ocfs2 doesn't have delayed allocation, so the
case may not be the same here. Anyway, one of my colleague Robin is
trying to change extent length from blocks to clusters. I'd like him to
update his process here.

Thanks
Tao

  reply	other threads:[~2011-10-27  1:05 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-10-26 23:36 bigalloc and max file size Andreas Dilger
2011-10-27  1:05 ` Tao Ma [this message]
2011-10-27  6:35 ` Theodore Tso
     [not found]   ` <EB03FF23-73BC-4FDC-B991-5EB3FEEB8DAE@whamcloud.com>
2011-10-27 11:48     ` Theodore Tso
     [not found]       ` <97D9C5CC-0F22-4BC7-BDFA-7781D33CA7F3@whamcloud.com>
2011-10-27 21:42         ` Theodore Tso
2011-10-28  3:31           ` Tao Ma
2011-10-31 10:15             ` Theodore Tso
2011-10-31 10:27               ` Tao Ma
2011-10-31 18:53                 ` Sunil Mushran
2011-10-31 19:09                   ` Andreas Dilger
2011-10-31 20:00                 ` Ted Ts'o
2011-11-01  4:06                   ` Tao Ma
2011-10-30  5:37           ` Coly Li
2011-10-30 19:49             ` Theodore Tso
2011-10-31  9:35               ` Coly Li
2011-10-31 10:22                 ` Theodore Tso
2011-10-31 16:08                   ` Andreas Dilger
2011-10-31 16:22                     ` Ted Ts'o
2011-10-31 17:39                       ` Coly Li
2011-10-31 19:38                         ` Ted Ts'o
2011-11-01  1:10                           ` Coly Li
2011-11-01 11:47                             ` Theodore Tso
2011-11-01 12:22                               ` Coly Li
2011-10-31 16:34                     ` Andreas Dilger

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=4EA8AE6D.6050907@tao.ma \
    --to=tm@tao.ma \
    --cc=aedilger@gmail.com \
    --cc=bzzz@whamcloud.com \
    --cc=linux-ext4@vger.kernel.org \
    --cc=tytso@mit.edu \
    /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;
as well as URLs for NNTP newsgroup(s).