From: Theodore Ts'o Date: Mon, 28 Apr 2014 14:07:16 +0000 (-0400) Subject: resize2fs: fix inode table move for the backwards move case X-Git-Tag: v1.42.10~29 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=cd84e9a337987658b8508fac2e4de4bd52e4b48d;p=thirdparty%2Fe2fsprogs.git resize2fs: fix inode table move for the backwards move case In the case where the new location of the inode table is before the old inode table, the optimization which tries to optimize zero block moves breaks. Fix it. This fixes a bug that was tickled by the reproduction described in the previous commit. Signed-off-by: "Theodore Ts'o" --- diff --git a/resize/resize2fs.c b/resize/resize2fs.c index 0d968faf7..c672cdbe0 100644 --- a/resize/resize2fs.c +++ b/resize/resize2fs.c @@ -1869,6 +1869,8 @@ static errcode_t move_itables(ext2_resize_t rfs) if (!diff) continue; + if (diff < 0) + diff = 0; retval = io_channel_read_blk64(fs->io, old_blk, fs->inode_blocks_per_group,