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  linux-hardening  linux-cve-announce  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:	Wed, 9 Apr 2008 14:59:38 -0400
From:	Theodore Tso <tytso@....EDU>
To:	supersud501 <supersud501@...oo.de>
Cc:	Eric Sandeen <sandeen@...hat.com>, linux-ext4@...r.kernel.org
Subject: Re: e2fsck (git) on ext4: unsupported feature(s): huge_file

On Wed, Apr 09, 2008 at 07:53:42PM +0200, supersud501 wrote:
> Theodore Tso wrote:
>> That patch which I just sent out passes the regression test suite, but
>> it hasn't been extensively tested for actual *huge* files.
>> (Specifically, files with the EXT4_HUGE_FILE_FL because they are
>> larger than 2TB and so i_blocks had to be specified in units of
>> filesystem blocksize, instead of units of 512 bytes.)
>> If you could apply the patch I just sent out and then run "e2fsck -nf
>> /dev/sdXXX" and let me know you get, that would be much appreciated.
>
> I'll do when the patch arrives in git (or where do i get it from?)

I mailed it to the linux-ext4 list for reiview, I'll send it to you
directly.

> Yeah, i'm getting some (~80) errors about i blocks being wrong (besides 
> errors that a fast symlink has extents_fl set), and the error is always 
> from the type: "i_blocks is x, should be x+8", so it always wants to add 8 
> to the existing number. is this the mentioned miscalculation?

x+8, or x*8?  I would have expected the latter.

> so i wonder why the flag is set on my drive and if the i_blocks errors i 
> get are because of some miscalculation (which shouldn't happen, because i 
> have no huge files, right?) or really are some errors (but it's weird 
> e2fsck wants to set them always to x+8). doesn't make much sense to me yet.


Using debugfs, can you use the stat command to dump out the inode, and
send the results?

i.e., if you get the message:

Inode 45994, i_blocks is 24, should be 192.  Fix? no

Then when you use debugfs, you might see:

debugfs 1.40.8 (13-Mar-2008)
debugfs:  features
Filesystem features: has_journal resize_inode dir_index filetype sparse_super large_file huge_file
debugfs:  stat <45994>
Inode: 45994   Type: regular    Mode:  0644   Flags: 0x0   Generation: 124890615
User:     0   Group:     0   Size: 90118
File ACL: 0    Directory ACL: 0
Links: 1   Blockcount: 24
Fragment:  Address: 0    Number: 0    Size: 0
ctime: 0x47ddb871 -- Sun Mar 16 20:16:49 2008
atime: 0x47fbd5d3 -- Tue Apr  8 16:30:11 2008
mtime: 0x47dca16f -- Sun Mar 16 00:26:23 2008
BLOCKS:
(0-11):140798-140809, (IND):140810, (12-22):140811-140821
TOTAL: 24

So with the huge file, note the Blockcount (i_blocks) of 24, and that
debugfs reports the total number of blocks is 24.  

Without the huge_file feature, you'll see this:

debugfs 1.40.8 (13-Mar-2008)
debugfs:  features
Filesystem features: has_journal resize_inode dir_index filetype sparse_super large_file
debugfs:   stat <45994>
Inode: 45994   Type: regular    Mode:  0644   Flags: 0x0   Generation: 124890615
User:     0   Group:     0   Size: 90118
File ACL: 0    Directory ACL: 0
Links: 1   Blockcount: 192
Fragment:  Address: 0    Number: 0    Size: 0
ctime: 0x47ddb871 -- Sun Mar 16 20:16:49 2008
atime: 0x47fbd5d3 -- Tue Apr  8 16:30:11 2008
mtime: 0x47dca16f -- Sun Mar 16 00:26:23 2008
BLOCKS:
(0-11):140798-140809, (IND):140810, (12-22):140811-140821
TOTAL: 24

Note that the blockcount (i.e., i_blocks) is 192 blocks (in Single
Unix Specification legacy 512-byte units).  Since this filesystem is
using a 4k filesystem blocksize, and there are 8 legacy SuS blocks per
filesystem block, when you take the 192 blockcount, and divide by 8,
you get 24 blocks --- which matches with the "TOTAL: 24" display.

       	   	 	      	  	  - Ted
--
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

Powered by Openwall GNU/*/Linux Powered by OpenVZ