r272057: Import pjdfstest from ^/vendor/pjdfstest/abf03c3a47745d4521b0e4aa141317553ca48f91 - Remove tools/regression/pjdfstest - Add upgrade directions for contrib/pjdfstest - Add a note to UPDATING for the move (the reachover Makefiles are coming soon) Functional differences: - ftruncate testcases are added from upstream (github) Non-functional differences: - The copyright for the project has been updated to 2012 - pjd's contact information has been updated Discussed with: -testing, jmmv, pjd Sponsored by: EMC / Isilon Storage Division r272083: Expect ELOOP on Darwin/Linux with "O_NOFOLLOW was specified and the target is a symbolic link" case. Assume EMLINK on the rest of the OSes (FreeBSD, Solaris, etc) Sponsored by: EMC / Isilon Storage Division r272084: Fix the executed testplan count Sponsored by: EMC / Isilon Storage Division r272087: Increase the memory disk size in the following testcases to avoid mount failures, which would cause cascade failures in the rest of the test run: link/15.t, open/19.t, mkdir/11.t, mkfifo/11.t, symlink/11.t Fail quickly in all of the testcases if mdconfig, mount, umount, etc fails to avoid issues similar to this in the future Submitted by: Casey Peel <cpeel@isilon.com> Sponsored by: EMC / Isilon Storage Division r274016: Integrate pjdfstest test suite execution into kyua pjdfstest execution is opt-in and must be done as root due to some of the assumptions made by the test suite and lack of error checking in the non-root case A description of how to execute pjdfstest with kyua is provided in share/pjdfstest/README Phabric: D824 (an earlier prototype patch) Relnotes: yes Sponsored by: EMC / Isilon Storage Division
pjdfstest test suite execution is integrated into kyua. This README describes how to use pjdfstest in the default configuration (kyua work directory), and with a specific filesystem path. Method 1. Executing with default configuration (kyua work directory) 1. Elevate privileges: % su - 2. cd to the tests directory: % cd /usr/tests/sys/pjdfstest 3. Run kyua: % kyua test Executing the commands as shown above will run pjdfstest in the kyua work directory. The kyua work directory defaults to a random generated path under /tmp; please see TMPDIR in kyua(1) for more details on how the temporary path is chosen with kyua. Method 2. Executing with a specific filesystem path (in this case /mnt) 1. Elevate privileges: % su - 2. cd to the tests directory: % cd /usr/tests/sys/pjdfstest 3. Run kyua: % env PJDFSTEST_TEST_PATH=/mnt kyua test WARNING: the above method violates the test program isolation algorithm described in kyua(1); as such, $PJDFSTEST_TEST_PATH must be cleaned up after executing the testcases. It's highly recommended that $PJDFSTEST_TEST_PATH be pointed to a sandboxed filesystem, e.g. a small UFS-formatted memory disk or ZFS dataset with quotas enabled, so the filesystem can be easily destroyed after the test execution is complete, and the testcases are properly bounded both in terms of time and space.