#!/bin/bash # Run this test with a specific time, because we're crosslinking an extent tree # block with the inode table. When fsck sets dtime to now, we want "now" to be # our preprogrammed value. FSCK_OPT=-fy IMAGE=$test_dir/image.gz E2FSCK_TIME=4294967294 export E2FSCK_TIME gzip -d < $IMAGE > $TMPFILE # Run fsck to fix things? EXP1=$test_dir/expect.1 OUT1=$test_name.1.log $FSCK $FSCK_OPT -N test_filesys $TMPFILE 2>&1 | tail -n +2 > $OUT1 echo "Exit status is $?" >> $OUT1 # Run a second time EXP2=$test_dir/expect.2 OUT2=$test_name.2.log $FSCK $FSCK_OPT -N test_filesys $TMPFILE 2>&1 | tail -n +2 > $OUT2 echo "Exit status is $?" >> $OUT2 # Figure out what happened if cmp -s $EXP1 $OUT1 && cmp -s $EXP2 $OUT2; then echo "$test_name: $test_description: ok" touch $test_name.ok else echo "$test_name: $test_description: failed" diff -u $EXP1 $OUT1 >> $test_name.failed diff -u $EXP2 $OUT2 >> $test_name.failed fi