lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Sun, 29 Jul 2012 18:46:28 +0200
From:	Arne H├╝ggenberg <hueggenberg@...rtsandbytes.de>
To:	Andreas Dilger <adilger@...mcloud.com>
Cc:	linux-ext4@...r.kernel.org
Subject: Re: resize2fs > 16TB questions


On Jul 29, 2012, at 6:11 PM, Andreas Dilger wrote:

> On 2012-07-29, at 8:24, Arne H├╝ggenberg <hueggenberg@...rtsandbytes.de> wrote:
>> 
>> im trying to resize a ext4 fs to > 16TB.
> 
> Unfortunately, this is not possible today without advance planning.  There are some structures on disk (group descriptors) that need to be larger for 64-bit filesystems. It is possible to format a 32-bit filesystem with larger group descriptors using the "-O 64bit" option, but this doesn't happen by default today. 
> 
> Possibly we should start using the 64-byte group descriptors by default for filesystems over, say, 4 TB, so they can be resized beyond 16 TB.

I have no idea what the overhead for 64byte group descriptors is, but with LVM Setups becoming more common and enabling incremental storage increases over a timeframe of several years, maybe 1TB filesystems should be cutoff.

> It might also be possible to modify resize2fs to change the group descriptor size, but that isn't possible today. 
> 
>> Having had a look at the e2fsprogs 1.42.x release notes i thought that, with the online resize ioctl having been merged in Kernel 3.3, this should be possible.
>> 
>> But so far i have had no success achieving this:
>> 
>> ~ # uname -a
>> Linux 3.3.8-gentoo #1 SMP Fri Jul 27 16:13:25 CEST 2012 x86_64 Intel(R) Xeon(R) CPU E5620 @ 2.40GHz GenuineIntel GNU/Linux
>> 
>> ~ # tune2fs -l /dev/vg0/lvol1
>> tune2fs 1.42.4 (12-June-2012)
>> Filesystem volume name:   <none>
>> Last mounted on:          /home/filestore_extern_1
>> Filesystem UUID:          8fba4f1b-5311-4c9b-b8bf-def4957dc1bd
>> Filesystem magic number:  0xEF53
>> Filesystem revision #:    1 (dynamic)
>> Filesystem features:      has_journal ext_attr resize_inode dir_index filetype needs_recovery extent 64bit flex_bg sparse_super large_file huge_file uninit_bg dir_nlink extra_isize
> 
> Was the filesystem formatted with the 64bit option, or was this enabled after formatting time?  This puts my earlier comment in doubt. 

the filesystem was formatted with
from mke2fs.conf:

        ext4 = {
                features = has_journal,extent,huge_file,flex_bg,uninit_bg,dir_nlink,extra_isize,64bit
                auto_64-bit_support = 1
                inode_size = 256
        }

> 
>> Filesystem flags:         signed_directory_hash 
>> Default mount options:    user_xattr acl
>> Filesystem state:         clean
>> Errors behavior:          Continue
>> Filesystem OS type:       Linux
>> Inode count:              521011200
>> Block count:              4168089600
>> Reserved block count:     191127425
>> Free blocks:              2195165566
>> Free inodes:              520937830
>> First block:              0
>> Block size:               4096
>> Fragment size:            4096
>> Reserved GDT blocks:      60
>> Blocks per group:         32768
>> Fragments per group:      32768
>> Inodes per group:         4096
>> Inode blocks per group:   256
>> RAID stride:              16
>> RAID stripe width:        160
>> Flex block group size:    16
>> Filesystem created:       Fri Jul 27 17:16:24 2012
>> Last mount time:          Sun Jul 29 15:22:23 2012
>> Last write time:          Sun Jul 29 15:22:23 2012
>> Mount count:              6
>> Maximum mount count:      -1
>> Last checked:             Fri Jul 27 17:16:24 2012
>> Check interval:           0 (<none>)
>> Lifetime writes:          7485 GB
>> Reserved blocks uid:      0 (user root)
>> Reserved blocks gid:      0 (group root)
>> First inode:              11
>> Inode size:              256
>> Required extra isize:     28
>> Desired extra isize:      28
>> Journal inode:            8
>> Default directory hash:   half_md4
>> Directory Hash Seed:      ef2ec72a-750b-4822-bd8d-9117faadeaee
>> Journal backup:           inode blocks
> 
> Unfortunately, the group descriptor size is not printed.  

how can i get the group descriptor size?

>> 
>> 
>> ~ # resize2fs /dev/vg0/lvol1
>> resize2fs 1.42.4 (12-June-2012)
>> resize2fs: New size too large to be expressed in 32 bits
> 
> This may just be a hard-coded check built into resize2fs, but may be over-zealous of the filesystem was formatted with -O 64bit. 
> 
>> Any advice on how to proceed would be welcome.
>> 
>> Regards,
>> Arne
>> 
>> 

Regards,
Arne--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Powered by blists - more mailing lists