This is needed to fix a large number of test failures on GNU Hurd.
Also skip a number of tests that require creating very large test file
systems,since Hurd does not support files greater than 4GB.
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
dd if=$TEST_BITS of=$TEST_DATA bs=4k count=2 seek=1> /dev/null 2>&1
touch $TMPFILE
-$MKE2FS -Fq -t ext4 -O bigalloc -C 16384 $TMPFILE 1M > /dev/null 2>&1
+$MKE2FS -Fq -t ext4 -o Linux -O bigalloc -C 16384 $TMPFILE 1M > /dev/null 2>&1
$DEBUGFS -w $TMPFILE << EOF > /dev/null 2>&1
write $TEST_DATA testfile
set_inode_field testfile i_mode 0120000
dd if=$TEST_BITS of=$TEST_DATA bs=28k count=1 > /dev/null 2>&1
touch $TMPFILE
-$MKE2FS -Fq -t ext4 -O bigalloc $TMPFILE 1M > /dev/null 2>&1
+$MKE2FS -Fq -t ext4 -o Linux -O bigalloc $TMPFILE 1M > /dev/null 2>&1
$DEBUGFS -w $TMPFILE << EOF > /dev/null 2>&1
write $TEST_DATA testfile
set_inode_field testfile links_count 0
dd if=$TEST_BITS of=$TEST_DATA bs=63k count=1 conv=sync > /dev/null 2>&1
touch $TMPFILE
-$MKE2FS -F -O resize_inode $TMPFILE 10240 > /dev/null 2>&1
+$MKE2FS -F -o Linux -O resize_inode $TMPFILE 10240 > /dev/null 2>&1
$DEBUGFS -w $TMPFILE << EOF > /dev/null 2>&1
freeb 4 4
freeb 8195 4
TEST_DATA="$test_name.tmp"
dd if=/dev/zero of=$TMPFILE bs=1k count=256 > /dev/null 2>&1
-$MKE2FS -Ft ext4 $TMPFILE > /dev/null 2>&1
+$MKE2FS -Ft ext4 -o Linux $TMPFILE > /dev/null 2>&1
$DEBUGFS -w $TMPFILE << EOF > /dev/null 2>&1
write /dev/null testfile
setb 100 15
echo "tune2fs metadata_csum test" > $OUT
-MKE2FS_CONFIG=$CONF $MKE2FS -F -T ext4h $TMPFILE 524288 >> $OUT 2>&1
+MKE2FS_CONFIG=$CONF $MKE2FS -F -T ext4h -o Linux $TMPFILE 524288 >> $OUT 2>&1
rm -f $CONF
# dump and check
echo "rebuild extent metadata_csum test" > $OUT
-MKE2FS_CONFIG=$CONF $MKE2FS -F -T ext4h $TMPFILE 524288 >> $OUT 2>&1
+MKE2FS_CONFIG=$CONF $MKE2FS -F -T ext4h -o Linux $TMPFILE 524288 >> $OUT 2>&1
rm -f $CONF
# dump and check
DUMPE2FS_IGNORE_80COL=1
export DUMPE2FS_IGNORE_80COL
MKE2FS_OPTS="-t ext4 -G 512 -N 1280 -J size=5000 -q -E lazy_journal_init,lazy_itable_init,nodiscard"
-if [ $(uname -s) = "Darwin" ]; then
+os=$(uname -s)
+if [ "$os" = "Darwin" -o "$os" = "GNU" ]; then
# creates a 44GB filesystem
- echo "$test_name: $DESCRIPTION: skipped for HFS+ (no sparse files)"
+ echo "$test_name: $DESCRIPTION: skipped for $os"
return 0
fi
. $cmd_dir/run_mke2fs
EXP=$test_dir/expect
CONF=$TMPFILE.conf
-if [ $(uname -s) = "Darwin" ]; then
- # creates a 4TB filesystem
- echo "$test_name: $DESCRIPTION: skipped for HFS+ (no sparse files)"
- return 0
-fi
-
-if [ $(uname -s) = "FreeBSD" ]; then
- # creates a 4TB filesystem
- echo "$test_name: $DESCRIPTION: skipped for FreeBSD (no sparse files)"
+os=$(uname -s)
+if [ "$os" = "Darwin" -o "$os" = "GNU" -o "FreeBSD" ]; then
+ # creates a 44GB filesystem
+ echo "$test_name: $test_description: skipped for $os"
return 0
fi
echo "resize2fs test" > $OUT
-MKE2FS_CONFIG=$CONF $MKE2FS -F -T ext4h $TMPFILE 524288 >> $OUT 2>&1
+MKE2FS_CONFIG=$CONF $MKE2FS -F -T ext4h -o Linux $TMPFILE 524288 >> $OUT 2>&1
rm -f $CONF
# dump and check
echo "resize2fs test" > $OUT
-MKE2FS_CONFIG=$CONF $MKE2FS -F -T ext4h $TMPFILE 524288 >> $OUT 2>&1
+MKE2FS_CONFIG=$CONF $MKE2FS -F -T ext4h -o Linux $TMPFILE 524288 >> $OUT 2>&1
rm -f $CONF
# dump and check
echo "resize2fs test" > $OUT
-MKE2FS_CONFIG=$CONF $MKE2FS -F -T ext4h $TMPFILE 786432 >> $OUT 2>&1
+MKE2FS_CONFIG=$CONF $MKE2FS -F -T ext4h -o Linux $TMPFILE 786432 >> $OUT 2>&1
rm -f $CONF
# dump and check
LOG=$test_name.log
E2FSCK=../e2fsck/e2fsck
-if [ $(uname -s) = "FreeBSD" ]; then
+os=$(uname -s)
+if [ "$os" = "Darwin" -o "$os" = "GNU" -o "FreeBSD" ]; then
# creates a 2TB filesystem
- echo "$test_name: $DESCRIPTION: skipped for FreeBSD"
+ echo "$test_name: $test_description: skipped for $os"
return 0
fi
echo "resize2fs test" > $OUT
-MKE2FS_CONFIG=$CONF $MKE2FS -F -T ext4h $TMPFILE 524288 >> $OUT 2>&1
+MKE2FS_CONFIG=$CONF $MKE2FS -F -T ext4h -o Linux $TMPFILE 524288 >> $OUT 2>&1
rm -f $CONF
# dump and check
echo "resize2fs test" > $OUT
-MKE2FS_CONFIG=$CONF $MKE2FS -F -T ext4h $TMPFILE 524288 >> $OUT 2>&1
+MKE2FS_CONFIG=$CONF $MKE2FS -F -T ext4h -o Linux $TMPFILE 524288 >> $OUT 2>&1
rm -f $CONF
# dump and check
E2FSCK=../e2fsck/e2fsck
RESIZE2FS_OPTS=-f
-if [ $(uname -s) = "FreeBSD" ]; then
+os=$(uname -s)
+if [ "$os" = "Darwin" -o "$os" = "GNU" -o "FreeBSD" ]; then
# creates a 2TB filesystem
- echo "$test_name: $DESCRIPTION: skipped for FreeBSD"
+ echo "$test_name: $test_description: skipped for $os"
return 0
fi
LOG=$test_name.log
E2FSCK=../e2fsck/e2fsck
-if [ $(uname -s) = "FreeBSD" ]; then
+os=$(uname -s)
+if [ "$os" = "Darwin" -o "$os" = "GNU" -o "FreeBSD" ]; then
# creates a 2TB filesystem
- echo "$test_name: $DESCRIPTION: skipped for FreeBSD"
+ echo "$test_name: $test_description: skipped for FreeBSD"
return 0
fi
OUT=$test_name.log
E2FSCK=../e2fsck/e2fsck
-$MKE2FS -T ext4 -b 1024 -F -U 56d3ee50-8532-4f29-8181-d7c6ea4a94a6 $TMPFILE 20000 > $OUT 2>&1
+$MKE2FS -T ext4 -o Linux -b 1024 -F -U 56d3ee50-8532-4f29-8181-d7c6ea4a94a6 $TMPFILE 20000 > $OUT 2>&1
$DUMPE2FS $TMPFILE 2>&1 | grep -A10 '^Group 2:' >> $OUT
$DEBUGFS -R "set_bg 2 itable_unused 0" -w $TMPFILE > /dev/null 2>&1
$DEBUGFS -R "set_bg 2 flags 0" -w $TMPFILE > /dev/null 2>&1
OUT=$test_name.log
E2FSCK=../e2fsck/e2fsck
-$MKE2FS -T ext4 -b 1024 -F -U 56d3ee50-8532-4f29-8181-d7c6ea4a94a6 $TMPFILE 20000 > $OUT 2>&1
+$MKE2FS -T ext4 -o Linux -b 1024 -F -U 56d3ee50-8532-4f29-8181-d7c6ea4a94a6 $TMPFILE 20000 > $OUT 2>&1
$DUMPE2FS $TMPFILE 2>&1 | grep -A10 '^Group 2:' >> $OUT
$DEBUGFS -R "set_bg 2 itable_unused 0" -w $TMPFILE > /dev/null 2>&1
$DEBUGFS -R "set_bg 2 flags 0" -w $TMPFILE > /dev/null 2>&1
-if [ $(uname -s) = "FreeBSD" ]; then
- # creates a 96GB filesystem
- echo "$test_name: $DESCRIPTION: skipped for FreeBSD (no sparse files)"
- return 0
-fi
-
-if [ $(uname -s) = "Darwin" ]; then
+os=$(uname -s)
+if [ "$os" = "Darwin" -o "$os" = "GNU" -o "FreeBSD" ]; then
# creates a 96GB filesystem
- echo "$test_name: $DESCRIPTION: skipped for HFS+ (no sparse files)"
+ echo "$test_name: $test_description: skipped for $os"
return 0
fi
-if [ $(uname -s) = "FreeBSD" ]; then
- # creates a 96GB filesystem
- echo "$test_name: $DESCRIPTION: skipped for FreeBSD (no sparse files)"
- return 0
-fi
-
-if [ $(uname -s) = "Darwin" ]; then
+os=$(uname -s)
+if [ "$os" = "Darwin" -o "$os" = "GNU" -o "FreeBSD" ]; then
# creates a 96GB filesystem
- echo "$test_name: $DESCRIPTION: skipped for HFS+ (no sparse files)"
+ echo "$test_name: $test_description: skipped: skipped for $os"
return 0
fi
# Test command line option
echo "create fs with metadata_csum" >> $OUT
-$MKE2FS -O metadata_csum,^metadata_csum_seed -U 6b33f586-a183-4383-921d-30da3fef2e5c -F $TMPFILE > /dev/null 2>&1
+$MKE2FS -o Linux -O metadata_csum,^metadata_csum_seed -U 6b33f586-a183-4383-921d-30da3fef2e5c -F $TMPFILE > /dev/null 2>&1
$DUMPE2FS $TMPFILE 2>&1 | egrep '(Checksum seed:|UUID)' >> $OUT
echo "change UUID" >> $OUT
# Test command line option
echo "create fs with metadata_csum" >> $OUT
-$MKE2FS -O metadata_csum,^metadata_csum_seed -U 6b33f586-a183-4383-921d-30da3fef2e5c -F $TMPFILE > /dev/null 2>&1
+$MKE2FS -o Linux -O metadata_csum,^metadata_csum_seed -U 6b33f586-a183-4383-921d-30da3fef2e5c -F $TMPFILE > /dev/null 2>&1
$DUMPE2FS $TMPFILE 2>&1 | egrep '(Checksum seed:|UUID)' >> $OUT
echo "change UUID" >> $OUT
# Test command line option
echo "create fs with metadata_csum" >> $OUT
-$MKE2FS -O metadata_csum,^metadata_csum_seed -U 6b33f586-a183-4383-921d-30da3fef2e5c -F $TMPFILE > /dev/null 2>&1
+$MKE2FS -o Linux -O metadata_csum,^metadata_csum_seed -U 6b33f586-a183-4383-921d-30da3fef2e5c -F $TMPFILE > /dev/null 2>&1
$DUMPE2FS $TMPFILE 2>&1 | egrep '(Checksum seed:|UUID)' >> $OUT
echo "change UUID" >> $OUT
echo "tune2fs dangerous prompts test" > $OUT
-MKE2FS_CONFIG=$CONF $MKE2FS -F -T ext4h -U 6fc3daa4-180d-4f2b-a6f2-f7a5efb79bcf $TMPFILE 524288 >> $OUT 2>&1
+MKE2FS_CONFIG=$CONF $MKE2FS -F -T ext4h -o Linux -U 6fc3daa4-180d-4f2b-a6f2-f7a5efb79bcf $TMPFILE 524288 >> $OUT 2>&1
# trigger a filesystem check
$DEBUGFS -w -R 'ssv mtime now' $TMPFILE > /dev/null 2>&1
status=$?
echo Exit status is $status >> $OUT
-MKE2FS_CONFIG=$CONF $MKE2FS -F -T ext4h -U 6fc3daa4-180d-4f2b-a6f2-f7a5efb79bcf $TMPFILE 524288 >> $OUT 2>&1
+MKE2FS_CONFIG=$CONF $MKE2FS -F -T ext4h -o Linux -U 6fc3daa4-180d-4f2b-a6f2-f7a5efb79bcf $TMPFILE 524288 >> $OUT 2>&1
# dump and check
$DUMPE2FS $TMPFILE 2> /dev/null | grep '^Group 0:' -B99 -A20 | sed -f $cmd_dir/filter.sed > $OUT.before
echo " " >> $OUT
echo "Testing with metadata checksum enabled" >> $OUT
-MKE2FS_CONFIG=$CONF $MKE2FS -F -T ext4m -U 6fc3daa4-180d-4f2b-a6f2-f7a5efb79bcf $TMPFILE 524288 >> $OUT 2>&1
+MKE2FS_CONFIG=$CONF $MKE2FS -F -T ext4m -o Linux -U 6fc3daa4-180d-4f2b-a6f2-f7a5efb79bcf $TMPFILE 524288 >> $OUT 2>&1
$DUMPE2FS $TMPFILE 2> /dev/null | grep '^Group 0:' -B99 -A20 | sed -f $cmd_dir/filter.sed > $OUT.before
$FSCK $FSCK_OPT -f -N test_filesys $TMPFILE >> $OUT 2>&1
status=$?
# Test command line option
echo "create fs without csum_seed" >> $OUT
-$MKE2FS -O metadata_csum,^metadata_csum_seed -U 6b33f586-a183-4383-921d-30da3fef2e5c -F $TMPFILE > /dev/null 2>&1
+$MKE2FS -o Linux -O metadata_csum,^metadata_csum_seed -U 6b33f586-a183-4383-921d-30da3fef2e5c -F $TMPFILE > /dev/null 2>&1
$DUMPE2FS $TMPFILE 2>&1 | egrep '(Checksum seed:|UUID)' >> $OUT
echo "turn on csum_seed" >> $OUT
# Test command line option
echo "create fs without csum_seed" >> $OUT
-$MKE2FS -O metadata_csum,^metadata_csum_seed -U 6b33f586-a183-4383-921d-30da3fef2e5c -F $TMPFILE > /dev/null 2>&1
+$MKE2FS -o Linux -O metadata_csum,^metadata_csum_seed -U 6b33f586-a183-4383-921d-30da3fef2e5c -F $TMPFILE > /dev/null 2>&1
$DUMPE2FS $TMPFILE 2>&1 | egrep '(Checksum seed:|UUID)' >> $OUT
echo "turn on csum_seed" >> $OUT
# Test command line option
echo "create fs without csum_seed" >> $OUT
-$MKE2FS -O metadata_csum,^metadata_csum_seed -U 6b33f586-a183-4383-921d-30da3fef2e5c -F $TMPFILE > /dev/null 2>&1
+$MKE2FS -o Linux -O metadata_csum,^metadata_csum_seed -U 6b33f586-a183-4383-921d-30da3fef2e5c -F $TMPFILE > /dev/null 2>&1
$DUMPE2FS $TMPFILE 2>&1 | egrep '(Checksum seed:|UUID)' >> $OUT
echo "turn on csum_seed" >> $OUT
echo "tune2fs ^metadata_csum test" > $OUT
-MKE2FS_CONFIG=$CONF $MKE2FS -F -T ext4h $TMPFILE 524288 >> $OUT 2>&1
+MKE2FS_CONFIG=$CONF $MKE2FS -F -T ext4h -o Linux $TMPFILE 524288 >> $OUT 2>&1
rm -rf $CONF
# dump and check
echo "tune2fs ^metadata_csum test" > $OUT
-MKE2FS_CONFIG=$CONF $MKE2FS -F -T ext4h $TMPFILE 524288 >> $OUT 2>&1
+MKE2FS_CONFIG=$CONF $MKE2FS -F -T ext4h -o Linux $TMPFILE 524288 >> $OUT 2>&1
rm -f $CONF
# dump and check
echo "tune2fs ^metadata_csum test" > $OUT
-MKE2FS_CONFIG=$CONF $MKE2FS -F -T ext4h $TMPFILE 524288 >> $OUT 2>&1
+MKE2FS_CONFIG=$CONF $MKE2FS -F -T ext4h -o Linux $TMPFILE 524288 >> $OUT 2>&1
rm -f $CONF
# dump and check
# Test command line option
echo "create fs without csum_seed" >> $OUT
-$MKE2FS -O metadata_csum,^metadata_csum_seed -U 6b33f586-a183-4383-921d-30da3fef2e5c -F $TMPFILE > /dev/null 2>&1
+$MKE2FS -o Linux -O metadata_csum,^metadata_csum_seed -U 6b33f586-a183-4383-921d-30da3fef2e5c -F $TMPFILE > /dev/null 2>&1
$DUMPE2FS $TMPFILE 2>&1 | egrep '(Checksum seed:|UUID)' >> $OUT
echo "turn on csum_seed" >> $OUT
# Test command line option
echo "create fs without csum_seed" >> $OUT
-$MKE2FS -O metadata_csum,^metadata_csum_seed -U 6b33f586-a183-4383-921d-30da3fef2e5c -F $TMPFILE > /dev/null 2>&1
+$MKE2FS -o Linux -O metadata_csum,^metadata_csum_seed -U 6b33f586-a183-4383-921d-30da3fef2e5c -F $TMPFILE > /dev/null 2>&1
$DUMPE2FS $TMPFILE 2>&1 | egrep '(Checksum seed:|UUID)' >> $OUT
echo "turn on csum_seed" >> $OUT
echo "tune2fs metadata_csum test" > $OUT
-MKE2FS_CONFIG=$CONF $MKE2FS -F -T ext4h $TMPFILE 524288 >> $OUT 2>&1
+MKE2FS_CONFIG=$CONF $MKE2FS -o Linux -F -T ext4h $TMPFILE 524288 >> $OUT 2>&1
rm -rf $CONF
# dump and check
echo "tune2fs metadata_csum test" > $OUT
-MKE2FS_CONFIG=$CONF $MKE2FS -F -T ext4h $TMPFILE 524288 >> $OUT 2>&1
+MKE2FS_CONFIG=$CONF $MKE2FS -o Linux -F -T ext4h $TMPFILE 524288 >> $OUT 2>&1
rm -rf $CONF
# dump and check
echo "tune2fs metadata_csum test" > $OUT
-MKE2FS_CONFIG=$CONF $MKE2FS -F -T ext4h $TMPFILE 524288 >> $OUT 2>&1
+MKE2FS_CONFIG=$CONF $MKE2FS -o Linux -F -T ext4h $TMPFILE 524288 >> $OUT 2>&1
rm -rf $CONF
# dump and check
# Test command line option
echo "create fs with csum_seed" >> $OUT
-$MKE2FS -O metadata_csum,metadata_csum_seed -U 6b33f586-a183-4383-921d-30da3fef2e5c -F $TMPFILE > /dev/null 2>&1
+$MKE2FS -o Linux -O metadata_csum,metadata_csum_seed -U 6b33f586-a183-4383-921d-30da3fef2e5c -F $TMPFILE > /dev/null 2>&1
$DUMPE2FS $TMPFILE 2>&1 | egrep '(Checksum seed:|UUID)' >> $OUT
echo "change uuid" >> $OUT
echo "tune2fs test" > $OUT
-MKE2FS_CONFIG=$CONF $MKE2FS -F -T ext4h -I 128 $TMPFILE 786432 >> $OUT 2>&1
+MKE2FS_CONFIG=$CONF $MKE2FS -F -T ext4h -o Linux -I 128 $TMPFILE 786432 >> $OUT 2>&1
rm -f $CONF
# dump and check
echo "tune2fs test" > $OUT
-MKE2FS_CONFIG=$CONF $MKE2FS -F -T ext4h -I 128 $TMPFILE 786432 >> $OUT 2>&1
+MKE2FS_CONFIG=$CONF $MKE2FS -F -T ext4h -o Linux -I 128 $TMPFILE 786432 >> $OUT 2>&1
rm -f $CONF
# dump and check
FSCK_OPT=-yf
EXP=$test_dir/expect
-if [ $(uname -s) = "Darwin" ]; then
+os=$(uname -s)
+if [ "$os" = "Darwin" -o "$os" = "GNU" -o "FreeBSD" ]; then
# creates a 10GB filesystem
- echo "$test_name: $DESCRIPTION: skipped for HFS+ (no sparse files)"
+ echo "$test_name: $test_description: skipped for $os"
return 0
fi