fix to work with multiple block sizes - we were running mkfs with a log
authorfsgqa <fsgqa>
Thu, 9 May 2002 06:03:32 +0000 (06:03 +0000)
committerfsgqa <fsgqa>
Thu, 9 May 2002 06:03:32 +0000 (06:03 +0000)
size which was dependent on block size, and became too small for 1024k
filesystems.

016
030.out
common.repair

diff --git a/016 b/016
index d40fbb00d0884e0c2a51384d9c34ec5c28d043e0..76ee2c01d4902fde3efb5a89cfbca044c9c5b160 100755 (executable)
--- a/016
+++ b/016
@@ -63,6 +63,7 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
 
 _cleanup()
 {
+    rm -f $tmp.*
     echo "*** unmount"
     umount $SCRATCH_MNT 2>/dev/null
 }
@@ -77,10 +78,13 @@ _init()
     echo "*** reset partition"
     $here/src/devzero -b 2048 -n 50 -v 198 $SCRATCH_DEV
     echo "*** mkfs"
-    if ! mkfs_xfs -dsize=50m -lsize=512b $SCRATCH_DEV >$tmp.out 2>&1
+    lsize=2097152
+    dsize=50m
+    echo mkfs_xfs -dsize=$dsize -lsize=$lsize $SCRATCH_DEV >>$seq.full
+    if ! mkfs_xfs -dsize=$dsize -lsize=$lsize $SCRATCH_DEV >>$seq.full 2>&1
     then
-        cat $tmp.out
-        echo "failed to mkfs $SCRATCH_DEV"
+        echo "failed to mkfs $SCRATCH_DEV" >>$seq.full
+        _notrun "mkfs cannot create scratch fs, probably too small log"
         exit 1
     fi
 }
@@ -201,8 +205,6 @@ done
 [ $head -lt 1000 ] || \
     _fail "!!! unexpected log position $head"
 
-
-# happy exit
-rm $seq.full
+# success, all done
 status=0
-exit 0
+exit
diff --git a/030.out b/030.out
index 54275d1a475678622a253f7d76fad4c82074dea8..02e75bfdec859202cc566e7f96809cde1fa32026 100644 (file)
--- a/030.out
+++ b/030.out
@@ -97,7 +97,7 @@ Phase 3 - for each AG...
         - scan and clear agi unlinked lists...
 error following ag 0 unlinked list
         - process known inodes and perform inode discovery...
-imap claims in-use inode 131 is free, correcting imap
+imap claims in-use inode INODE is free, correcting imap
         - process newly discovered inodes...
 Phase 4 - check for duplicate blocks...
         - setting up duplicate extent list...
@@ -244,7 +244,7 @@ root inode chunk not found
 Phase 3 - for each AG...
         - scan and clear agi unlinked lists...
         - process known inodes and perform inode discovery...
-imap claims in-use inode 131 is free, correcting imap
+imap claims in-use inode INODE is free, correcting imap
         - process newly discovered inodes...
 Phase 4 - check for duplicate blocks...
         - setting up duplicate extent list...
index 635e1e18fad6105ccb7edcbca869b90443186ac3..4e8877ee66c231c15c2a7c9d9f353dad4b82259e 100644 (file)
@@ -71,6 +71,7 @@ s/(max =) (\d+)/\1 MAX/g;
 # for root inos
 s/(on inode) (\d+)/\1 INO/g;
 s/(imap claims a free inode) (\d+)/\1 INO/;
+s/(imap claims in-use inode) (\d+)/\1 INO/;
 s/(cleared root inode) (\d+)/\1 INO/;
 s/(resetting inode) (\d+)/\1 INO/;
 s/(disconnected dir inode) (\d+)/\1 INO/;