_scratch_unmount
}
+_require_inode_limits()
+{
+ if [ $(_get_free_inode $TEST_DIR) -eq 0 ]; then
+ _notrun "$FSTYP does not have a fixed number of inodes available"
+ fi
+}
+
_require_filefrag_options()
{
_require_command "$FILEFRAG_PROG" filefrag
--- /dev/null
+#! /bin/bash
+# SPDX-License-Identifier: GPL-2.0
+# Copyright (c) 2014 Red Hat Inc. All Rights Reserved.
+#
+# FS QA Test No. generic/558
+#
+# Stress test fs by using up all inodes and check fs.
+#
+# Also a regression test for xfsprogs commit
+# d586858 xfs_repair: fix sibling pointer tests in verify_dir2_path()
+#
+seq=`basename $0`
+seqres=$RESULT_DIR/$seq
+echo "QA output created by $seq"
+
+here=`pwd`
+tmp=/tmp/$$
+status=1 # failure is the default!
+trap "_cleanup; exit \$status" 0 1 2 3 15
+
+_cleanup()
+{
+ cd /
+ rm -f $tmp.*
+}
+
+create_file()
+{
+ local dir=$1
+ local nr_file=$2
+ local prefix=$3
+ local i=0
+
+ while [ $i -lt $nr_file ]; do
+ echo -n > $dir/${prefix}_${i}
+ let i=$i+1
+ done
+}
+
+# get standard environment, filters and checks
+. ./common/rc
+. ./common/filter
+
+# real QA test starts here
+_supported_fs generic
+_supported_os Linux
+_require_inode_limits
+
+rm -f $seqres.full
+echo "Silence is golden"
+
+_scratch_mkfs_sized $((1024 * 1024 * 1024)) >>$seqres.full 2>&1
+_scratch_mount
+
+i=0
+free_inode=`_get_free_inode $SCRATCH_MNT`
+file_per_dir=1000
+loop=$((free_inode / file_per_dir + 1))
+mkdir -p $SCRATCH_MNT/testdir
+
+echo "Create $((loop * file_per_dir)) files in $SCRATCH_MNT/testdir" >>$seqres.full
+while [ $i -lt $loop ]; do
+ create_file $SCRATCH_MNT/testdir $file_per_dir $i >>$seqres.full 2>&1 &
+ let i=$i+1
+done
+wait
+
+# log inode status in $seqres.full for debug purpose
+echo "Inode status after taking all inodes" >>$seqres.full
+$DF_PROG -i $SCRATCH_MNT >>$seqres.full
+
+_check_scratch_fs
+
+# Check again after removing all the files
+rm -rf $SCRATCH_MNT/testdir
+echo "Inode status after deleting all test files" >>$seqres.full
+$DF_PROG -i $SCRATCH_MNT >>$seqres.full
+
+status=0
+exit
--- /dev/null
+QA output created by 558
+Silence is golden
555 auto quick cap
556 auto quick casefold
557 auto quick log
+558 auto enospc
+++ /dev/null
-#! /bin/bash
-# SPDX-License-Identifier: GPL-2.0
-# Copyright (c) 2014 Red Hat Inc. All Rights Reserved.
-#
-# FS QA Test No. shared/006
-#
-# Stress test fs by using up all inodes and check fs.
-#
-# Also a regression test for xfsprogs commit
-# d586858 xfs_repair: fix sibling pointer tests in verify_dir2_path()
-#
-seq=`basename $0`
-seqres=$RESULT_DIR/$seq
-echo "QA output created by $seq"
-
-here=`pwd`
-tmp=/tmp/$$
-status=1 # failure is the default!
-trap "_cleanup; exit \$status" 0 1 2 3 15
-
-_cleanup()
-{
- cd /
- rm -f $tmp.*
-}
-
-create_file()
-{
- local dir=$1
- local nr_file=$2
- local prefix=$3
- local i=0
-
- while [ $i -lt $nr_file ]; do
- echo -n > $dir/${prefix}_${i}
- let i=$i+1
- done
-}
-
-# get standard environment, filters and checks
-. ./common/rc
-. ./common/filter
-
-# real QA test starts here
-_supported_fs ext4 ext3 ext2 xfs
-_supported_os Linux
-
-_require_scratch
-
-rm -f $seqres.full
-echo "Silence is golden"
-
-_scratch_mkfs_sized $((1024 * 1024 * 1024)) >>$seqres.full 2>&1
-_scratch_mount
-
-i=0
-free_inode=`_get_free_inode $SCRATCH_MNT`
-file_per_dir=1000
-loop=$((free_inode / file_per_dir + 1))
-mkdir -p $SCRATCH_MNT/testdir
-
-echo "Create $((loop * file_per_dir)) files in $SCRATCH_MNT/testdir" >>$seqres.full
-while [ $i -lt $loop ]; do
- create_file $SCRATCH_MNT/testdir $file_per_dir $i >>$seqres.full 2>&1 &
- let i=$i+1
-done
-wait
-
-# log inode status in $seqres.full for debug purpose
-echo "Inode status after taking all inodes" >>$seqres.full
-$DF_PROG -i $SCRATCH_MNT >>$seqres.full
-
-_check_scratch_fs
-
-# Check again after removing all the files
-rm -rf $SCRATCH_MNT/testdir
-echo "Inode status after deleting all test files" >>$seqres.full
-$DF_PROG -i $SCRATCH_MNT >>$seqres.full
-
-status=0
-exit
+++ /dev/null
-QA output created by 006
-Silence is golden
# - comment line before each group is "new" description
#
002 auto metadata quick log
-006 auto enospc
008 auto stress dedupe
009 auto stress dedupe
010 auto stress dedupe