]>
Commit | Line | Data |
---|---|---|
3819bff4 AD |
1 | if ! test -x $DEBUGFS_EXE; then |
2 | echo "$test_name: $test_description: skipped (no debugfs)" | |
3 | return 0 | |
4 | fi | |
20466c80 DW |
5 | |
6 | FSCK_OPT=-fy | |
7 | OUT=$test_name.log | |
8 | if [ -f $test_dir/expect.gz ]; then | |
9 | EXP=$test_name.tmp | |
10 | gunzip < $test_dir/expect.gz > $EXP1 | |
11 | else | |
12 | EXP=$test_dir/expect | |
13 | fi | |
14 | ||
15 | cp /dev/null $OUT | |
16 | ||
17 | $MKE2FS -F -o Linux -b 4096 -O 64bit,has_journal,metadata_csum -T ext4 $TMPFILE 131072 2>&1 | sed -f $cmd_dir/filter.sed >> $OUT 2>&1 | |
18 | ||
19 | $FSCK -fy -N test_filesys $TMPFILE > $OUT.new 2>&1 | |
20 | status=$? | |
21 | echo Exit status is $status >> $OUT.new | |
22 | sed -f $cmd_dir/filter.sed -e "s;$TMPFILE;test.img;" $OUT.new >> $OUT | |
23 | rm -f $OUT.new | |
24 | ||
6aa8cff3 | 25 | bitmaps="$($DUMPE2FS $TMPFILE 2>&1 | grep 'bitmap at' | sed -e 's/^.*bitmap at \([0-9]*\).*$/\1/g' | tr '\n' ',')" |
20466c80 DW |
26 | |
27 | $DUMPE2FS $TMPFILE 2>&1 | grep '^Journal features:' >> $OUT | |
28 | ||
29 | echo "debugfs write journal" >> $OUT | |
30 | echo "jo -c" > $TMPFILE.cmd | |
31 | echo "jw -b $bitmaps /dev/zero" >> $TMPFILE.cmd | |
32 | echo "jc" >> $TMPFILE.cmd | |
3819bff4 | 33 | $DEBUGFS -w -f $TMPFILE.cmd $TMPFILE 2>> $OUT.new > /dev/null |
20466c80 DW |
34 | sed -f $cmd_dir/filter.sed < $OUT.new >> $OUT |
35 | rm -rf $OUT.new | |
36 | ||
37 | $DUMPE2FS $TMPFILE 2>&1 | grep '^Journal features:' >> $OUT | |
38 | ||
39 | test -d "$JOURNAL_DUMP_DIR" -a -w "$JOURNAL_DUMP_DIR" && cp "$TMPFILE" "$JOURNAL_DUMP_DIR/$test_name.img" | |
40 | echo "logdump -c" > $TMPFILE.cmd | |
3819bff4 | 41 | $DEBUGFS -f $TMPFILE.cmd $TMPFILE 2>&1 | sed -f $cmd_dir/filter.sed >> $OUT |
20466c80 DW |
42 | rm -rf $TMPFILE.cmd |
43 | ||
44 | $FSCK -fy -N test_filesys $TMPFILE > $OUT.new 2>&1 | |
45 | status=$? | |
46 | echo Exit status is $status >> $OUT.new | |
47 | sed -f $cmd_dir/filter.sed -e "s;$TMPFILE;test.img;" $OUT.new >> $OUT | |
48 | rm -f $OUT.new | |
49 | ||
96fae886 | 50 | rm -f $TMPFILE $TMPFILE.cmd |
20466c80 DW |
51 | |
52 | cmp -s $OUT $EXP | |
53 | status=$? | |
54 | ||
55 | if [ "$status" = 0 ] ; then | |
56 | echo "$test_name: $test_description: ok" | |
57 | touch $test_name.ok | |
58 | else | |
59 | echo "$test_name: $test_description: failed" | |
60 | diff $DIFF_OPTS $EXP $OUT > $test_name.failed | |
61 | rm -f $test_name.tmp | |
62 | fi | |
63 | ||
64 | unset IMAGE FSCK_OPT OUT EXP |