e2fsck: Don't object to extents flags on deleted fast symlinks

Thanks to Aneesh Kumar for pointing this out.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
bitmap-optimize
Theodore Ts'o 2008-03-24 08:17:24 -04:00
parent 85b59c40f4
commit cb23cad5b7
1 changed files with 8 additions and 8 deletions

View File

@ -713,14 +713,6 @@ void e2fsck_pass1(e2fsck_t ctx)
}
}
if (extent_fs && (inode->i_flags & EXT4_EXTENTS_FL) &&
LINUX_S_ISLNK(inode->i_mode) &&
!ext2fs_inode_has_valid_blocks(inode) &&
fix_problem(ctx, PR_1_FAST_SYMLINK_EXTENT_FL, &pctx)) {
inode->i_flags &= ~EXT4_EXTENTS_FL;
e2fsck_write_inode(ctx, ino, inode, "pass1");
}
if (ino == EXT2_BAD_INO) {
struct process_block_struct pb;
@ -925,6 +917,14 @@ void e2fsck_pass1(e2fsck_t ctx)
check_inode_extra_space(ctx, &pctx);
check_is_really_dir(ctx, &pctx, block_buf);
if (extent_fs && (inode->i_flags & EXT4_EXTENTS_FL) &&
LINUX_S_ISLNK(inode->i_mode) &&
!ext2fs_inode_has_valid_blocks(inode) &&
fix_problem(ctx, PR_1_FAST_SYMLINK_EXTENT_FL, &pctx)) {
inode->i_flags &= ~EXT4_EXTENTS_FL;
e2fsck_write_inode(ctx, ino, inode, "pass1");
}
if (LINUX_S_ISDIR(inode->i_mode)) {
ext2fs_mark_inode_bitmap(ctx->inode_dir_map, ino);
e2fsck_add_dir_info(ctx, ino, 0);