Re: [PATCH] clear extents flag on inodes created in ext4_mknod
From: Eric Sandeen <hidden>
Date: 2008-02-19 16:58:31
Aneesh Kumar K.V wrote:
On Tue, Feb 19, 2008 at 10:39:52AM -0600, Eric Sandeen wrote:quoted
Eric Sandeen wrote:quoted
e2fsck doesn't expect to find char, block, fifo, or socket files with the extent flag set, so clear that in ext4_mknod. Signed-off-by: Eric Sandeen <redacted> --- Index: linux-2.6.24/fs/ext4/namei.c ===================================================================--- linux-2.6.24.orig/fs/ext4/namei.c +++ linux-2.6.24/fs/ext4/namei.c@@ -1766,6 +1766,7 @@ retry: #ifdef CONFIG_EXT4DEV_FS_XATTR inode->i_op = &ext4_special_inode_operations; #endif + EXT4_I(inode)->i_flags &= ~EXT4_EXTENTS_FL; err = ext4_add_nondir(handle, dentry, inode); } ext4_journal_stop(handle);now that I think about it; perhaps it would be better to put this logic into ext4_new_inode, rather than setting it by default and clearing it here... that way new_inode() has all the logic about whether or not a particular type of file is in extents format.How about enabling it only for directory and regular files rather than enabling it globally and then disabling the flag for symlink and device files ?
I think that makes sense. -Eric