resize2fs.c (block_mover): If there are no blocks to move,
release the bmap table. This significantly speeds up
resize2fs when shrinking or expanding a filesystem by a
very small number of blocks (which EVMS will do).
diff --git a/resize/ChangeLog b/resize/ChangeLog
index 04414b1..e9bfd21 100644
--- a/resize/ChangeLog
+++ b/resize/ChangeLog
@@ -1,3 +1,10 @@
+2002-07-26 Theodore Ts'o <tytso@mit.edu>
+
+ * resize2fs.c (block_mover): If there are no blocks to move,
+ release the bmap table. This significantly speeds up
+ resize2fs when shrinking or expanding a filesystem by a
+ very small number of blocks (which EVMS will do).
+
2002-05-28 <tytso@mit.edu>
* main.c (main): If the filesystem has errors or is not valid,
diff --git a/resize/resize2fs.c b/resize/resize2fs.c
index 42ba470..67caa40 100644
--- a/resize/resize2fs.c
+++ b/resize/resize2fs.c
@@ -790,6 +790,10 @@
}
if (to_move == 0) {
+ if (rfs->bmap) {
+ ext2fs_free_extent_table(rfs->bmap);
+ rfs->bmap = 0;
+ }
retval = 0;
goto errout;
}