Re: mkfs'ing a 48-bit fs... or not.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2011-10-03, at 10:00 PM, Ted Ts'o <tytso@xxxxxxx> wrote:
> On Mon, Oct 03, 2011 at 04:55:11PM -0500, Eric Sandeen wrote:
>> Has anyone tried mke2fs at its limits?  The latest git tree seems to fail in several ways.
>> (Richard Jones reported the initial failure)
>> 
>> # truncate --size 1152921504606846976 reallybigfile 
>> # mke2fs -t ext4 reallybigfile
>> 
>> first,
>> 
>> Warning: the fs_type huge is not defined in mke2fs.conf
>> 
>> (when types "big" and "huge" got added, they never got a mke2fs.conf update?)
> 
> It used to be that an undefined file system type didn't flag an error.
> It now does, so we should have definitions for them in mke2fs.conf.
> 
>> reallybigfile: Not enough space to build proposed filesystem while setting up superblock

Isn't there also a problem with the number of block group descriptor blocks in the first group, if meta_bg is not used?  With 64-byte group descriptors per 128MB group this is 1024 bytes of descriptors for 2GB of blocks, or 128MB of descriptors for 256TB of blocks.  At this point group 0 is full of primary block descriptors and group 1 is full of backup descriptors, and we are out of luck to make a larger filesystem. 

That is only 2^48 bytes, not 2^48 blocks (2^60 bytes), so it means meta_bg needs to get into more testing, and online resize with flex_bg needs to move forward. 

>> because:
>> 
>>        fs->group_desc_count = (blk_t) ext2fs_div64_ceil(
>>                ext2fs_blocks_count(super) - super->s_first_data_block,
>>                EXT2_BLOCKS_PER_GROUP(super));
>>        if (fs->group_desc_count == 0) {
>>                retval = EXT2_ET_TOOSMALL;
>> 
>> The div64_ceil returns > 2^32 (2^33, actually), and the cast to blk_t
>> (which should be dgrp_t?) turns that into a 0.
> 
> Yep, that should be dgrp_t.  Oops.
> 
>> Trying it with "-O bigalloc" (which should be automatic at this size,
>> I think?) just goes away for a very long time, I'm not sure what it's
>> thinking about, or if it's in a loop somewhere (looking now).
> 
> Well, we probably do want to engage bigalloc automatically, at some
> point (I want to wait until bigalloc is in commonly used kernels, at
> least for community distro's).  I'm not sure what the best cluster
> size to pick by default should be, though.  16k?  64k?
> 
>                                                  - Ted
> --
> To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Reiser Filesystem Development]     [Ceph FS]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux FS]     [Yosemite National Park]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Device Mapper]     [Linux Media]

  Powered by Linux