- cd into the xfstests directory
- install prerequisite packages
For example, for Ubuntu:
- "sudo apt-get install xfslibs-dev uuid-dev libtool-bin e2fsprogs
- automake gcc libuuid1 quota attr libattr1-dev make
- libacl1-dev libaio-dev xfsprogs libgdbm-dev gawk fio dbench
- uuid-runtime"
+ sudo apt-get install xfslibs-dev uuid-dev libtool-bin \
+ e2fsprogs automake gcc libuuid1 quota attr libattr1-dev make \
+ libacl1-dev libaio-dev xfsprogs libgdbm-dev gawk fio dbench \
+ uuid-runtime
For Fedora, RHEL, or CentOS:
- "yum install acl attr awk bc dbench dump e2fsprogs fio gawk
- indent lvm2 psmisc quota sed xfsdump xfsprogs
- libacl-devel libattr-devel libaio-devel libuuid-devel
- openssl-devel xfsprogs-devel btrfs-progs-devel"
+ yum install acl attr automake bc dbench dump e2fsprogs fio \
+ gawk gcc indent libtool lvm2 make psmisc quota sed \
+ xfsdump xfsprogs \
+ libacl-devel libattr-devel libaio-devel libuuid-devel \
+ xfsprogs-devel btrfs-progs-devel
(Older distributions may require xfsprogs-qa-devel as well.)
(Note that for RHEL and CentOS, you may need the EPEL repo.)
- run make
- setup your environment
Quick start:
- - copy config.local.example to config.local and edit as needed
+ - copy local.config.example to local.config and edit as needed
Or:
- setenv TEST_DEV "device containing TEST PARTITION"
- setenv TEST_DIR "mount point of TEST PARTITION"
run xfs_repair -n to check the filesystem; xfs_repair to rebuild
metadata indexes; and xfs_repair -n (a third time) to check the
results of the rebuilding.
+ - set TEST_XFS_SCRUB=1 to have _check_xfs_filesystem run
+ xfs_scrub -vd to scrub the filesystem metadata online before
+ unmounting to run the offline check.
- or add a case to the switch in common/config assigning
these variables based on the hostname of your test
- By default the tests suite will run xfs tests:
- ./check '*/001' '*/002' '*/003'
- ./check '*/06?'
- - You can explicitly specify NFS/CIFS/UDF, otherwise the filesystem type will
- be autodetected from $TEST_DEV:
- ./check -nfs [test(s)]
- Groups of tests maybe ran by: ./check -g [group(s)]
See the 'group' file for details on groups
- - for udf tests: ./check -udf [test(s)]
- Running all the udf tests: ./check -udf -g udf
- - for running nfs tests: ./check -nfs [test(s)]
- - for running cifs/smb3 tests: ./check -cifs [test(s)]
- To randomize test order: ./check -r [test(s)]
+ - You can explicitly specify NFS/CIFS/UDF/OVERLAY, otherwise
+ the filesystem type will be autodetected from $TEST_DEV:
+ - for running nfs tests: ./check -nfs [test(s)]
+ - for running cifs/smb3 tests: ./check -cifs [test(s)]
+ - for udf tests: ./check -udf [test(s)]
+ Running all the udf tests: ./check -udf -g udf
+ - for overlay tests: ./check -overlay [test(s)]
+ The TEST and SCRATCH partitions should be pre-formatted
+ with another base fs, where the overlay dirs will be created
The check script tests the return value of each script, and
The recent pass/fail history is maintained in the file "check.log".
The elapsed time for the most recent pass for each test is kept
in "check.time".
+
+ The compare-failures script in tools/ may be used to compare failures
+ across multiple runs, given files containing stdout from those runs.
+
+__________________
+SUBMITTING PATCHES
+__________________
+
+Send patches to the fstests mailing list at fstests@vger.kernel.org.