Home | History | Annotate | Download | only in r_expand_full
      1 if test -x $RESIZE2FS_EXE -a -x $DEBUGFS_EXE; then
      2 
      3 FSCK_OPT=-fn
      4 OUT=$test_name.log
      5 EXP=$test_dir/expect
      6 CONF=$TMPFILE.conf
      7 
      8 #gzip -d < $EXP.gz > $EXP
      9 
     10 cat > $CONF << ENDL
     11 [fs_types]
     12 	ext4h = {
     13 		features = has_journal,extent,huge_file,uninit_bg,dir_nlink,extra_isize,sparse_super,filetype,dir_index,ext_attr,^resize_inode,^meta_bg,^flex_bg
     14 		blocksize = 1024
     15 		inode_size = 256
     16 		make_hugefiles = true
     17 		hugefiles_dir = /
     18 		hugefiles_slack = 0
     19 		hugefiles_name = aaaaa
     20 		hugefiles_digits = 4
     21 		hugefiles_size = 1M
     22 		zero_hugefiles = false
     23 	}
     24 ENDL
     25 
     26 echo "resize2fs test" > $OUT
     27 
     28 MKE2FS_CONFIG=$CONF $MKE2FS -F -T ext4h $TMPFILE 786432 >> $OUT 2>&1
     29 rm -rf $CONF
     30 
     31 # dump and check
     32 $DUMPE2FS -g $TMPFILE 2>&1 >> $OUT.before 2> /dev/null
     33 $FSCK $FSCK_OPT -N test_filesys $TMPFILE >> $OUT 2>&1
     34 status=$?
     35 echo Exit status is $status >> $OUT
     36 
     37 # convert it
     38 echo "resize2fs test.img" >> $OUT
     39 dd if=/dev/zero of=$TMPFILE conv=notrunc bs=1 count=1 seek=3221225471 2> /dev/null
     40 $RESIZE2FS -f $TMPFILE 2>&1 >> $OUT 2>&1
     41 status=$?
     42 echo Exit status is $status >> $OUT
     43 
     44 # dump and check
     45 $DUMPE2FS -g $TMPFILE 2>&1 >> $OUT.after 2> /dev/null
     46 echo "Change in FS metadata:" >> $OUT
     47 diff -u $OUT.before $OUT.after | tail -n +3 >> $OUT
     48 $FSCK $FSCK_OPT -N test_filesys $TMPFILE >> $OUT 2>&1
     49 status=$?
     50 echo Exit status is $status >> $OUT
     51 
     52 rm $TMPFILE
     53 
     54 #
     55 # Do the verification
     56 #
     57 
     58 sed -f $cmd_dir/filter.sed -e "s;$TMPFILE;test.img;" -e 's/test_filesys:.*//g' < $OUT > $OUT.new
     59 mv $OUT.new $OUT
     60 
     61 cmp -s $OUT $EXP
     62 status=$?
     63 
     64 if [ "$status" = 0 ] ; then
     65 	echo "$test_name: $test_description: ok"
     66 	touch $test_name.ok
     67 else
     68 	echo "$test_name: $test_description: failed"
     69 	diff $DIFF_OPTS $EXP $OUT > $test_name.failed
     70 fi
     71 
     72 rm $OUT.before $OUT.after
     73 
     74 unset IMAGE FSCK_OPT OUT EXP CONF
     75 
     76 else #if test -x $RESIZE2FS_EXE -a -x $DEBUGFS_EXE; then
     77 	echo "$test_name: $test_description: skipped"
     78 fi
     79 
     80