Skip to content
Browse files

3311 Want a test framework for arbitrary OS unit tests

3312 Add a testrunner package for OS unit tests
3313 Add a testrunner package to convert ZFS tests from STF
Reviewed by: Matt Ahrens <matthew.ahrens@delphix.com>
Reviewed by: Will Guyette <will.guyette@delphix.com>
Reviewed by: Dan Kimmel <dan.kimmel@delphix.com>
Reviewed by: Adam Leventhal <ahl@delphix.com>
Reviewed by: Henrik Mattson <henrik.mattson@delphix.com>
Reviewed by: Sonu Pillai <sonu.pillai@delphix.com>
Reviewed by: Christopher Siden <chris.siden@delphix.com>
Reviewed by: George Wilson <george.wilson@delphix.com>
Reviewed by: Richard Lowe <richlowe@richlowe.net>
Approved by: Richard Lowe <richlowe@richlowe.net>
  • Loading branch information...
1 parent 7646c8f commit d583b39bfb4e2571d3e41097c5c357ffe353ad45 @jwk404 jwk404 committed with richlowe Dec 5, 2012
Showing with 19,775 additions and 3 deletions.
  1. +2 −2 exception_lists/keywords
  2. +4 −1 usr/src/Makefile
  3. +1 −0 usr/src/Makefile.lint
  4. +33 −0 usr/src/pkg/manifests/system-test-ostest.mf
  5. +36 −0 usr/src/pkg/manifests/system-test-testrunner.mf
  6. +1,401 −0 usr/src/pkg/manifests/system-test-zfstest.mf
  7. +20 −0 usr/src/test/Makefile
  8. +35 −0 usr/src/test/Makefile.com
  9. +20 −0 usr/src/test/os-tests/Makefile
  10. +37 −0 usr/src/test/os-tests/cmd/Makefile
  11. +54 −0 usr/src/test/os-tests/cmd/ostest.ksh
  12. +35 −0 usr/src/test/os-tests/doc/Makefile
  13. +59 −0 usr/src/test/os-tests/doc/README
  14. +39 −0 usr/src/test/os-tests/runfiles/Makefile
  15. +26 −0 usr/src/test/os-tests/runfiles/delphix.run
  16. +26 −0 usr/src/test/os-tests/runfiles/openindiana.run
  17. +18 −0 usr/src/test/os-tests/tests/Makefile
  18. +57 −0 usr/src/test/os-tests/tests/poll/Makefile
  19. +559 −0 usr/src/test/os-tests/tests/poll/poll_test.c
  20. +20 −0 usr/src/test/test-runner/Makefile
  21. +37 −0 usr/src/test/test-runner/cmd/Makefile
  22. +839 −0 usr/src/test/test-runner/cmd/run.py
  23. +38 −0 usr/src/test/test-runner/man/Makefile
  24. +370 −0 usr/src/test/test-runner/man/run.1
  25. +20 −0 usr/src/test/test-runner/stf/Makefile
  26. +19 −0 usr/src/test/test-runner/stf/README
  27. +37 −0 usr/src/test/test-runner/stf/contrib/include/Makefile
  28. +384 −0 usr/src/test/test-runner/stf/contrib/include/logapi.shlib
  29. +37 −0 usr/src/test/test-runner/stf/include/Makefile
  30. +57 −0 usr/src/test/test-runner/stf/include/stf.shlib
  31. +20 −0 usr/src/test/zfs-tests/Makefile
  32. +34 −0 usr/src/test/zfs-tests/cmd/Makefile
  33. +54 −0 usr/src/test/zfs-tests/cmd/Makefile.subdirs
  34. +19 −0 usr/src/test/zfs-tests/cmd/chg_usr_exec/Makefile
  35. +77 −0 usr/src/test/zfs-tests/cmd/chg_usr_exec/chg_usr_exec.c
  36. +22 −0 usr/src/test/zfs-tests/cmd/devname2devid/Makefile
  37. +120 −0 usr/src/test/zfs-tests/cmd/devname2devid/devname2devid.c
  38. +19 −0 usr/src/test/zfs-tests/cmd/dir_rd_update/Makefile
  39. +117 −0 usr/src/test/zfs-tests/cmd/dir_rd_update/dir_rd_update.c
  40. +19 −0 usr/src/test/zfs-tests/cmd/file_check/Makefile
  41. +86 −0 usr/src/test/zfs-tests/cmd/file_check/file_check.c
  42. +62 −0 usr/src/test/zfs-tests/cmd/file_common.h
  43. +19 −0 usr/src/test/zfs-tests/cmd/file_trunc/Makefile
  44. +242 −0 usr/src/test/zfs-tests/cmd/file_trunc/file_trunc.c
  45. +19 −0 usr/src/test/zfs-tests/cmd/file_write/Makefile
  46. +231 −0 usr/src/test/zfs-tests/cmd/file_write/file_write.c
  47. +19 −0 usr/src/test/zfs-tests/cmd/largest_file/Makefile
  48. +134 −0 usr/src/test/zfs-tests/cmd/largest_file/largest_file.c
  49. +22 −0 usr/src/test/zfs-tests/cmd/mkbusy/Makefile
  50. +180 −0 usr/src/test/zfs-tests/cmd/mkbusy/mkbusy.c
  51. +19 −0 usr/src/test/zfs-tests/cmd/mktree/Makefile
  52. +191 −0 usr/src/test/zfs-tests/cmd/mktree/mktree.c
  53. +19 −0 usr/src/test/zfs-tests/cmd/mmapwrite/Makefile
  54. +95 −0 usr/src/test/zfs-tests/cmd/mmapwrite/mmapwrite.c
  55. +19 −0 usr/src/test/zfs-tests/cmd/randfree_file/Makefile
  56. +103 −0 usr/src/test/zfs-tests/cmd/randfree_file/randfree_file.c
  57. +19 −0 usr/src/test/zfs-tests/cmd/readmmap/Makefile
  58. +137 −0 usr/src/test/zfs-tests/cmd/readmmap/readmmap.c
  59. +19 −0 usr/src/test/zfs-tests/cmd/rename_dir/Makefile
  60. +88 −0 usr/src/test/zfs-tests/cmd/rename_dir/rename_dir.c
  61. +19 −0 usr/src/test/zfs-tests/cmd/rm_lnkcnt_zero_file/Makefile
  62. +152 −0 usr/src/test/zfs-tests/cmd/rm_lnkcnt_zero_file/rm_lnkcnt_zero_file.c
  63. +36 −0 usr/src/test/zfs-tests/cmd/scripts/Makefile
  64. +133 −0 usr/src/test/zfs-tests/cmd/scripts/zfstest.ksh
  65. +35 −0 usr/src/test/zfs-tests/doc/Makefile
  66. +77 −0 usr/src/test/zfs-tests/doc/README
  67. +44 −0 usr/src/test/zfs-tests/include/Makefile
  68. +161 −0 usr/src/test/zfs-tests/include/commands.cfg
  69. +149 −0 usr/src/test/zfs-tests/include/default.cfg
  70. +2,571 −0 usr/src/test/zfs-tests/include/libtest.shlib
  71. +43 −0 usr/src/test/zfs-tests/include/math.shlib
  72. +63 −0 usr/src/test/zfs-tests/include/properties.shlib
  73. +38 −0 usr/src/test/zfs-tests/runfiles/Makefile
  74. +272 −0 usr/src/test/zfs-tests/runfiles/delphix.run
  75. +272 −0 usr/src/test/zfs-tests/runfiles/openindiana.run
  76. +20 −0 usr/src/test/zfs-tests/tests/Makefile
  77. +25 −0 usr/src/test/zfs-tests/tests/functional/Makefile
  78. +43 −0 usr/src/test/zfs-tests/tests/functional/acl/Makefile
  79. +64 −0 usr/src/test/zfs-tests/tests/functional/acl/acl.cfg
  80. +626 −0 usr/src/test/zfs-tests/tests/functional/acl/acl_common.kshlib
  81. +45 −0 usr/src/test/zfs-tests/tests/functional/acl/cifs/Makefile
  82. +76 −0 usr/src/test/zfs-tests/tests/functional/acl/cifs/cifs.kshlib
  83. +241 −0 usr/src/test/zfs-tests/tests/functional/acl/cifs/cifs_attr_001_pos.ksh
  84. +208 −0 usr/src/test/zfs-tests/tests/functional/acl/cifs/cifs_attr_002_pos.ksh
  85. +602 −0 usr/src/test/zfs-tests/tests/functional/acl/cifs/cifs_attr_003_pos.ksh
  86. +39 −0 usr/src/test/zfs-tests/tests/functional/acl/cifs/cleanup.ksh
  87. +59 −0 usr/src/test/zfs-tests/tests/functional/acl/cifs/setup.ksh
  88. +64 −0 usr/src/test/zfs-tests/tests/functional/acl/nontrivial/Makefile
  89. +39 −0 usr/src/test/zfs-tests/tests/functional/acl/nontrivial/cleanup.ksh
  90. +59 −0 usr/src/test/zfs-tests/tests/functional/acl/nontrivial/setup.ksh
  91. +131 −0 usr/src/test/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_chmod_001_neg.ksh
  92. +61 −0 usr/src/test/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_chmod_002_pos.ksh
  93. +555 −0 usr/src/test/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_chmod_aclmode_001_pos.ksh
  94. +243 −0 usr/src/test/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_chmod_compact_001_pos.ksh
  95. +301 −0 usr/src/test/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_chmod_delete_001_pos.ksh
  96. +173 −0 usr/src/test/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_chmod_inherit_001_pos.ksh
  97. +339 −0 usr/src/test/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_chmod_inherit_002_neg.ksh
  98. +357 −0 usr/src/test/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_chmod_inherit_002_pos.ksh
  99. +406 −0 usr/src/test/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_chmod_inherit_003_pos.ksh
  100. +149 −0 usr/src/test/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_chmod_inherit_004_pos.ksh
  101. +324 −0 usr/src/test/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_chmod_owner_001_pos.ksh
  102. +242 −0 usr/src/test/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_chmod_rwacl_001_pos.ksh
  103. +125 −0 usr/src/test/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_chmod_rwx_001_pos.ksh
  104. +241 −0 usr/src/test/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_chmod_rwx_002_pos.ksh
  105. +132 −0 usr/src/test/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_chmod_rwx_003_pos.ksh
  106. +138 −0 usr/src/test/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_chmod_rwx_004_pos.ksh
  107. +238 −0 usr/src/test/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_chmod_xattr_001_pos.ksh
  108. +233 −0 usr/src/test/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_chmod_xattr_002_pos.ksh
  109. +95 −0 usr/src/test/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_cp_001_pos.ksh
  110. +101 −0 usr/src/test/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_cp_002_pos.ksh
  111. +122 −0 usr/src/test/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_cpio_001_pos.ksh
  112. +128 −0 usr/src/test/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_cpio_002_pos.ksh
  113. +129 −0 usr/src/test/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_find_001_pos.ksh
  114. +105 −0 usr/src/test/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_ls_001_pos.ksh
  115. +171 −0 usr/src/test/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_mv_001_pos.ksh
  116. +107 −0 usr/src/test/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_tar_001_pos.ksh
  117. +115 −0 usr/src/test/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_tar_002_pos.ksh
  118. +56 −0 usr/src/test/zfs-tests/tests/functional/acl/trivial/Makefile
  119. +39 −0 usr/src/test/zfs-tests/tests/functional/acl/trivial/cleanup.ksh
  120. +59 −0 usr/src/test/zfs-tests/tests/functional/acl/trivial/setup.ksh
  121. +140 −0 usr/src/test/zfs-tests/tests/functional/acl/trivial/zfs_acl_chmod_001_pos.ksh
  122. +72 −0 usr/src/test/zfs-tests/tests/functional/acl/trivial/zfs_acl_compress_001_pos.ksh
  123. +75 −0 usr/src/test/zfs-tests/tests/functional/acl/trivial/zfs_acl_cp_001_pos.ksh
  124. +72 −0 usr/src/test/zfs-tests/tests/functional/acl/trivial/zfs_acl_cp_002_neg.ksh
  125. +118 −0 usr/src/test/zfs-tests/tests/functional/acl/trivial/zfs_acl_cp_003_neg.ksh
  126. +81 −0 usr/src/test/zfs-tests/tests/functional/acl/trivial/zfs_acl_find_001_pos.ksh
  127. +87 −0 usr/src/test/zfs-tests/tests/functional/acl/trivial/zfs_acl_find_002_neg.ksh
  128. +68 −0 usr/src/test/zfs-tests/tests/functional/acl/trivial/zfs_acl_ls_001_pos.ksh
  129. +69 −0 usr/src/test/zfs-tests/tests/functional/acl/trivial/zfs_acl_ls_002_neg.ksh
  130. +67 −0 usr/src/test/zfs-tests/tests/functional/acl/trivial/zfs_acl_mv_001_pos.ksh
  131. +72 −0 usr/src/test/zfs-tests/tests/functional/acl/trivial/zfs_acl_pack_001_pos.ksh
  132. +84 −0 usr/src/test/zfs-tests/tests/functional/acl/trivial/zfs_acl_pax_001_pos.ksh
  133. +83 −0 usr/src/test/zfs-tests/tests/functional/acl/trivial/zfs_acl_pax_002_pos.ksh
  134. +78 −0 usr/src/test/zfs-tests/tests/functional/acl/trivial/zfs_acl_pax_003_pos.ksh
  135. +84 −0 usr/src/test/zfs-tests/tests/functional/acl/trivial/zfs_acl_pax_004_pos.ksh
  136. +91 −0 usr/src/test/zfs-tests/tests/functional/acl/trivial/zfs_acl_pax_005_pos.ksh
Sorry, we could not display the entire diff because too many files (682) changed.
View
4 exception_lists/keywords
@@ -23,8 +23,6 @@
#
syntax: glob
-#exception_lists/cstyle
-#exception_lists/hdrchk
usr/src/cmd/localedef/data/zh_CN.UTF-8.src
usr/src/cmd/localedef/data/zh_HK.UTF-8.src
usr/src/cmd/localedef/data/zh_MO.UTF-8.src
@@ -33,3 +31,5 @@ usr/src/cmd/localedef/data/zh_TW.UTF-8.src
usr/src/cmd/terminfo/termcap.src
usr/src/cmd/terminfo/terminfo.src
usr/src/cmd/zonestat/zonestat/zonestat.c
+usr/src/test/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v15.dat.bz2
+usr/src/test/test-runner/cmd/run.py
View
5 usr/src/Makefile
@@ -18,9 +18,12 @@
#
# CDDL HEADER END
#
+
#
# Copyright (c) 1989, 2010, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2012 by Delphix. All rights reserved.
#
+
#
# Makefile for system source
#
@@ -31,7 +34,7 @@ include Makefile.master
# it defines TARGETDIRS and ROOTDIRS.
include Targetdirs
-COMMON_SUBDIRS= uts lib cmd ucblib ucbcmd psm man
+COMMON_SUBDIRS= uts lib cmd ucblib ucbcmd psm man test
sparc_SUBDIRS= stand
i386_SUBDIRS= grub
View
1 usr/src/Makefile.lint
@@ -469,6 +469,7 @@ COMMON_SUBDIRS = \
lib/udapl \
lib/watchmalloc \
psm \
+ test \
ucbcmd/basename \
ucbcmd/biff \
ucbcmd/echo \
View
33 usr/src/pkg/manifests/system-test-ostest.mf
@@ -0,0 +1,33 @@
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL"), version 1.0.
+# You may only use this file in accordance with the terms of version
+# 1.0 of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source. A copy of the CDDL is also available via the Internet at
+# http://www.illumos.org/license/CDDL.
+#
+
+#
+# Copyright (c) 2012 by Delphix. All rights reserved.
+#
+
+set name=pkg.fmri value=pkg:/system/test/ostest@$(PKGVERS)
+set name=pkg.description value="Miscellaneous OS Unit Tests"
+set name=pkg.summary value="OS Unit Test Suite"
+set name=info.classification \
+ value=org.opensolaris.category.2008:Development/System
+set name=variant.arch value=$(ARCH)
+dir path=opt/os-tests
+dir path=opt/os-tests/bin
+dir path=opt/os-tests/runfiles
+dir path=opt/os-tests/tests
+file path=opt/os-tests/README mode=0444
+file path=opt/os-tests/bin/ostest mode=0555
+file path=opt/os-tests/runfiles/delphix.run mode=0444
+file path=opt/os-tests/runfiles/openindiana.run mode=0444
+file path=opt/os-tests/tests/poll_test mode=0555
+license cr_Sun license=cr_Sun
+license lic_CDDL license=lic_CDDL
+depend fmri=system/test/testrunner type=require
View
36 usr/src/pkg/manifests/system-test-testrunner.mf
@@ -0,0 +1,36 @@
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL"), version 1.0.
+# You may only use this file in accordance with the terms of version
+# 1.0 of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source. A copy of the CDDL is also available via the Internet at
+# http://www.illumos.org/license/CDDL.
+#
+
+#
+# Copyright (c) 2012 by Delphix. All rights reserved.
+#
+
+set name=pkg.fmri value=pkg:/system/test/testrunner@$(PKGVERS)
+set name=pkg.description value="Test Runner"
+set name=pkg.summary value="Unit Test Framework"
+set name=info.classification \
+ value=org.opensolaris.category.2008:Development/System
+set name=variant.arch value=$(ARCH)
+dir path=opt/test-runner
+dir path=opt/test-runner/bin
+dir path=opt/test-runner/man
+dir path=opt/test-runner/man/man1
+dir path=opt/test-runner/stf
+dir path=opt/test-runner/stf/contrib
+dir path=opt/test-runner/stf/contrib/include
+dir path=opt/test-runner/stf/include
+file path=opt/test-runner/bin/run mode=0555
+file path=opt/test-runner/man/man1/run.1 mode=0444
+file path=opt/test-runner/stf/contrib/include/logapi.shlib mode=0555
+file path=opt/test-runner/stf/include/stf.shlib mode=0555
+license cr_Sun license=cr_Sun
+license lic_CDDL license=lic_CDDL
+depend fmri=security/sudo type=require
View
1,401 usr/src/pkg/manifests/system-test-zfstest.mf
@@ -0,0 +1,1401 @@
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL"), version 1.0.
+# You may only use this file in accordance with the terms of version
+# 1.0 of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source. A copy of the CDDL is also available via the Internet at
+# http://www.illumos.org/license/CDDL.
+#
+
+#
+# Copyright (c) 2012 by Delphix. All rights reserved.
+#
+
+set name=pkg.fmri value=pkg:/system/test/zfstest@$(PKGVERS)
+set name=pkg.description value="ZFS Test Suite"
+set name=pkg.summary value="ZFS Functional and Stress Tests"
+set name=info.classification \
+ value=org.opensolaris.category.2008:Development/System
+set name=variant.arch value=$(ARCH)
+dir path=opt/zfs-tests
+dir path=opt/zfs-tests/bin
+dir path=opt/zfs-tests/include
+dir path=opt/zfs-tests/runfiles
+dir path=opt/zfs-tests/tests
+dir path=opt/zfs-tests/tests/functional
+dir path=opt/zfs-tests/tests/functional/acl
+dir path=opt/zfs-tests/tests/functional/acl/cifs
+dir path=opt/zfs-tests/tests/functional/acl/nontrivial
+dir path=opt/zfs-tests/tests/functional/acl/trivial
+dir path=opt/zfs-tests/tests/functional/atime
+dir path=opt/zfs-tests/tests/functional/bootfs
+dir path=opt/zfs-tests/tests/functional/cli_root
+dir path=opt/zfs-tests/tests/functional/cli_root/zdb
+dir path=opt/zfs-tests/tests/functional/cli_root/zfs
+dir path=opt/zfs-tests/tests/functional/cli_root/zfs_clone
+dir path=opt/zfs-tests/tests/functional/cli_root/zfs_copies
+dir path=opt/zfs-tests/tests/functional/cli_root/zfs_create
+dir path=opt/zfs-tests/tests/functional/cli_root/zfs_destroy
+dir path=opt/zfs-tests/tests/functional/cli_root/zfs_get
+dir path=opt/zfs-tests/tests/functional/cli_root/zfs_inherit
+dir path=opt/zfs-tests/tests/functional/cli_root/zfs_mount
+dir path=opt/zfs-tests/tests/functional/cli_root/zfs_promote
+dir path=opt/zfs-tests/tests/functional/cli_root/zfs_property
+dir path=opt/zfs-tests/tests/functional/cli_root/zfs_receive
+dir path=opt/zfs-tests/tests/functional/cli_root/zfs_rename
+dir path=opt/zfs-tests/tests/functional/cli_root/zfs_reservation
+dir path=opt/zfs-tests/tests/functional/cli_root/zfs_rollback
+dir path=opt/zfs-tests/tests/functional/cli_root/zfs_send
+dir path=opt/zfs-tests/tests/functional/cli_root/zfs_set
+dir path=opt/zfs-tests/tests/functional/cli_root/zfs_share
+dir path=opt/zfs-tests/tests/functional/cli_root/zfs_snapshot
+dir path=opt/zfs-tests/tests/functional/cli_root/zfs_unmount
+dir path=opt/zfs-tests/tests/functional/cli_root/zfs_unshare
+dir path=opt/zfs-tests/tests/functional/cli_root/zfs_upgrade
+dir path=opt/zfs-tests/tests/functional/cli_root/zpool
+dir path=opt/zfs-tests/tests/functional/cli_root/zpool_add
+dir path=opt/zfs-tests/tests/functional/cli_root/zpool_attach
+dir path=opt/zfs-tests/tests/functional/cli_root/zpool_clear
+dir path=opt/zfs-tests/tests/functional/cli_root/zpool_create
+dir path=opt/zfs-tests/tests/functional/cli_root/zpool_destroy
+dir path=opt/zfs-tests/tests/functional/cli_root/zpool_detach
+dir path=opt/zfs-tests/tests/functional/cli_root/zpool_expand
+dir path=opt/zfs-tests/tests/functional/cli_root/zpool_export
+dir path=opt/zfs-tests/tests/functional/cli_root/zpool_get
+dir path=opt/zfs-tests/tests/functional/cli_root/zpool_history
+dir path=opt/zfs-tests/tests/functional/cli_root/zpool_import
+dir path=opt/zfs-tests/tests/functional/cli_root/zpool_import/blockfiles
+dir path=opt/zfs-tests/tests/functional/cli_root/zpool_offline
+dir path=opt/zfs-tests/tests/functional/cli_root/zpool_online
+dir path=opt/zfs-tests/tests/functional/cli_root/zpool_remove
+dir path=opt/zfs-tests/tests/functional/cli_root/zpool_replace
+dir path=opt/zfs-tests/tests/functional/cli_root/zpool_scrub
+dir path=opt/zfs-tests/tests/functional/cli_root/zpool_set
+dir path=opt/zfs-tests/tests/functional/cli_root/zpool_status
+dir path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade
+dir path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles
+dir path=opt/zfs-tests/tests/functional/nopwrite
+dir path=opt/zfs-tests/tests/functional/truncate
+file path=opt/zfs-tests/README mode=0444
+file path=opt/zfs-tests/bin/chg_usr_exec mode=0555
+file path=opt/zfs-tests/bin/devname2devid mode=0555
+file path=opt/zfs-tests/bin/dir_rd_update mode=0555
+file path=opt/zfs-tests/bin/file_check mode=0555
+file path=opt/zfs-tests/bin/file_trunc mode=0555
+file path=opt/zfs-tests/bin/file_write mode=0555
+file path=opt/zfs-tests/bin/largest_file mode=0555
+file path=opt/zfs-tests/bin/mkbusy mode=0555
+file path=opt/zfs-tests/bin/mktree mode=0555
+file path=opt/zfs-tests/bin/mmapwrite mode=0555
+file path=opt/zfs-tests/bin/randfree_file mode=0555
+file path=opt/zfs-tests/bin/readmmap mode=0555
+file path=opt/zfs-tests/bin/rename_dir mode=0555
+file path=opt/zfs-tests/bin/rm_lnkcnt_zero_file mode=0555
+file path=opt/zfs-tests/bin/zfstest mode=0555
+file path=opt/zfs-tests/include/commands.cfg mode=0555
+file path=opt/zfs-tests/include/default.cfg mode=0555
+file path=opt/zfs-tests/include/libtest.shlib mode=0555
+file path=opt/zfs-tests/include/math.shlib mode=0555
+file path=opt/zfs-tests/include/properties.shlib mode=0555
+file path=opt/zfs-tests/runfiles/delphix.run mode=0444
+file path=opt/zfs-tests/runfiles/openindiana.run mode=0444
+file path=opt/zfs-tests/tests/functional/acl/acl.cfg mode=0555
+file path=opt/zfs-tests/tests/functional/acl/acl_common.kshlib mode=0555
+file path=opt/zfs-tests/tests/functional/acl/cifs/cifs.kshlib mode=0555
+file path=opt/zfs-tests/tests/functional/acl/cifs/cifs_attr_001_pos mode=0555
+file path=opt/zfs-tests/tests/functional/acl/cifs/cifs_attr_002_pos mode=0555
+file path=opt/zfs-tests/tests/functional/acl/cifs/cifs_attr_003_pos mode=0555
+file path=opt/zfs-tests/tests/functional/acl/cifs/cleanup mode=0555
+file path=opt/zfs-tests/tests/functional/acl/cifs/setup mode=0555
+file path=opt/zfs-tests/tests/functional/acl/nontrivial/cleanup mode=0555
+file path=opt/zfs-tests/tests/functional/acl/nontrivial/setup mode=0555
+file path=opt/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_chmod_001_neg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_chmod_002_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_chmod_aclmode_001_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_chmod_compact_001_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_chmod_delete_001_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_chmod_inherit_001_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_chmod_inherit_002_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_chmod_inherit_002_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_chmod_inherit_003_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_chmod_inherit_004_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_chmod_owner_001_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_chmod_rwacl_001_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_chmod_rwx_001_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_chmod_rwx_002_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_chmod_rwx_003_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_chmod_rwx_004_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_chmod_xattr_001_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_chmod_xattr_002_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_cp_001_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_cp_002_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_cpio_001_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_cpio_002_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_find_001_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_ls_001_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_mv_001_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_tar_001_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/acl/nontrivial/zfs_acl_tar_002_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/acl/trivial/cleanup mode=0555
+file path=opt/zfs-tests/tests/functional/acl/trivial/setup mode=0555
+file path=opt/zfs-tests/tests/functional/acl/trivial/zfs_acl_chmod_001_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/acl/trivial/zfs_acl_compress_001_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/acl/trivial/zfs_acl_cp_001_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/acl/trivial/zfs_acl_cp_002_neg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/acl/trivial/zfs_acl_cp_003_neg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/acl/trivial/zfs_acl_find_001_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/acl/trivial/zfs_acl_find_002_neg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/acl/trivial/zfs_acl_ls_001_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/acl/trivial/zfs_acl_ls_002_neg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/acl/trivial/zfs_acl_mv_001_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/acl/trivial/zfs_acl_pack_001_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/acl/trivial/zfs_acl_pax_001_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/acl/trivial/zfs_acl_pax_002_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/acl/trivial/zfs_acl_pax_003_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/acl/trivial/zfs_acl_pax_004_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/acl/trivial/zfs_acl_pax_005_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/acl/trivial/zfs_acl_pax_006_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/acl/trivial/zfs_acl_tar_001_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/acl/trivial/zfs_acl_tar_002_neg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/atime/atime.cfg mode=0555
+file path=opt/zfs-tests/tests/functional/atime/atime_001_pos mode=0555
+file path=opt/zfs-tests/tests/functional/atime/atime_002_neg mode=0555
+file path=opt/zfs-tests/tests/functional/atime/atime_common.kshlib mode=0555
+file path=opt/zfs-tests/tests/functional/atime/cleanup mode=0555
+file path=opt/zfs-tests/tests/functional/atime/setup mode=0555
+file path=opt/zfs-tests/tests/functional/bootfs/bootfs_001_pos mode=0555
+file path=opt/zfs-tests/tests/functional/bootfs/bootfs_002_neg mode=0555
+file path=opt/zfs-tests/tests/functional/bootfs/bootfs_003_pos mode=0555
+file path=opt/zfs-tests/tests/functional/bootfs/bootfs_004_neg mode=0555
+file path=opt/zfs-tests/tests/functional/bootfs/bootfs_005_neg mode=0555
+file path=opt/zfs-tests/tests/functional/bootfs/bootfs_006_pos mode=0555
+file path=opt/zfs-tests/tests/functional/bootfs/bootfs_007_neg mode=0555
+file path=opt/zfs-tests/tests/functional/bootfs/bootfs_008_neg mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/cli_common.kshlib mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zdb/zdb_001_neg mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs/cleanup mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs/setup mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs/zfs_001_neg mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs/zfs_002_pos mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs/zfs_003_neg mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_clone/cleanup mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_clone/setup mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_clone/zfs_clone_001_neg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_clone/zfs_clone_002_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_clone/zfs_clone_003_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_clone/zfs_clone_004_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_clone/zfs_clone_005_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_clone/zfs_clone_006_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_clone/zfs_clone_007_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_clone/zfs_clone_008_neg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_clone/zfs_clone_009_neg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_clone/zfs_clone_010_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_copies/cleanup mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_copies/setup mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_copies/zfs_copies.cfg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_copies/zfs_copies.kshlib \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_copies/zfs_copies_001_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_copies/zfs_copies_002_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_copies/zfs_copies_003_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_copies/zfs_copies_004_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_copies/zfs_copies_005_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_copies/zfs_copies_006_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_create/cleanup mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_create/properties.kshlib \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_create/setup mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_create/zfs_create.cfg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_create/zfs_create_001_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_create/zfs_create_002_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_create/zfs_create_003_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_create/zfs_create_004_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_create/zfs_create_005_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_create/zfs_create_006_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_create/zfs_create_007_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_create/zfs_create_008_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_create/zfs_create_009_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_create/zfs_create_010_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_create/zfs_create_011_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_create/zfs_create_012_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_create/zfs_create_013_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_create/zfs_create_common.kshlib \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_destroy/cleanup \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_destroy/setup mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_destroy/zfs_destroy.cfg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_destroy/zfs_destroy_001_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_destroy/zfs_destroy_002_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_destroy/zfs_destroy_003_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_destroy/zfs_destroy_004_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_destroy/zfs_destroy_005_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_destroy/zfs_destroy_006_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_destroy/zfs_destroy_007_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_destroy/zfs_destroy_008_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_destroy/zfs_destroy_009_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_destroy/zfs_destroy_010_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_destroy/zfs_destroy_011_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_destroy/zfs_destroy_012_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_destroy/zfs_destroy_013_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_destroy/zfs_destroy_014_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_destroy/zfs_destroy_015_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_destroy/zfs_destroy_016_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_destroy/zfs_destroy_common.kshlib \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_get/cleanup mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_get/setup mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_get/zfs_get_001_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_get/zfs_get_002_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_get/zfs_get_003_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_get/zfs_get_004_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_get/zfs_get_005_neg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_get/zfs_get_006_neg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_get/zfs_get_007_neg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_get/zfs_get_008_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_get/zfs_get_009_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_get/zfs_get_010_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_get/zfs_get_common.kshlib \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_get/zfs_get_list_d.kshlib \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_inherit/cleanup \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_inherit/setup mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_inherit/zfs_inherit_001_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_inherit/zfs_inherit_002_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_inherit/zfs_inherit_003_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_mount/cleanup mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_mount/setup mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_mount/zfs_mount.cfg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_mount/zfs_mount.kshlib \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_mount/zfs_mount_001_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_mount/zfs_mount_002_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_mount/zfs_mount_003_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_mount/zfs_mount_004_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_mount/zfs_mount_005_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_mount/zfs_mount_006_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_mount/zfs_mount_007_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_mount/zfs_mount_008_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_mount/zfs_mount_009_neg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_mount/zfs_mount_010_neg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_mount/zfs_mount_011_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_mount/zfs_mount_all_001_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_promote/cleanup \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_promote/setup mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_promote/zfs_promote.cfg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_promote/zfs_promote_001_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_promote/zfs_promote_002_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_promote/zfs_promote_003_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_promote/zfs_promote_004_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_promote/zfs_promote_005_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_promote/zfs_promote_006_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_promote/zfs_promote_007_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_promote/zfs_promote_008_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_property/cleanup \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_property/setup mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_property/zfs_written_property_001_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_receive/cleanup \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_receive/setup mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_receive/zfs_receive_001_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_receive/zfs_receive_002_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_receive/zfs_receive_003_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_receive/zfs_receive_004_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_receive/zfs_receive_005_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_receive/zfs_receive_006_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_receive/zfs_receive_007_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_receive/zfs_receive_008_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_receive/zfs_receive_009_neg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_rename/cleanup mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_rename/setup mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_rename/zfs_rename.cfg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_rename/zfs_rename.kshlib \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_rename/zfs_rename_001_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_rename/zfs_rename_002_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_rename/zfs_rename_003_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_rename/zfs_rename_004_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_rename/zfs_rename_005_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_rename/zfs_rename_006_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_rename/zfs_rename_007_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_rename/zfs_rename_008_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_rename/zfs_rename_009_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_rename/zfs_rename_010_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_rename/zfs_rename_011_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_rename/zfs_rename_012_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_rename/zfs_rename_013_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_reservation/cleanup \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_reservation/setup \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_reservation/zfs_reservation_001_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_reservation/zfs_reservation_002_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_rollback/cleanup \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_rollback/setup mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_rollback/zfs_rollback.cfg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_rollback/zfs_rollback_001_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_rollback/zfs_rollback_002_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_rollback/zfs_rollback_003_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_rollback/zfs_rollback_004_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_rollback/zfs_rollback_common.kshlib \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_send/cleanup mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_send/setup mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_send/zfs_send.cfg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_send/zfs_send_001_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_send/zfs_send_002_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_send/zfs_send_003_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_send/zfs_send_004_neg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_send/zfs_send_005_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_send/zfs_send_006_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_set/cache_001_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_set/cache_002_neg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_set/canmount_001_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_set/canmount_002_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_set/canmount_003_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_set/canmount_004_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_set/checksum_001_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_set/cleanup mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_set/compression_001_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_set/mountpoint_001_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_set/mountpoint_002_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_set/mountpoint_003_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_set/onoffs_001_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_set/property_alias_001_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_set/readonly_001_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_set/reservation_001_neg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_set/ro_props_001_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_set/setup mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_set/share_mount_001_neg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_set/snapdir_001_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_set/user_property_001_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_set/user_property_002_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_set/user_property_003_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_set/user_property_004_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_set/version_001_neg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_set/zfs_set_001_neg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_set/zfs_set_002_neg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_set/zfs_set_003_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_set/zfs_set_common.kshlib \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_share/cleanup mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_share/setup mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_share/zfs_share.cfg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_share/zfs_share_001_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_share/zfs_share_002_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_share/zfs_share_003_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_share/zfs_share_004_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_share/zfs_share_005_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_share/zfs_share_006_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_share/zfs_share_007_neg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_share/zfs_share_008_neg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_share/zfs_share_009_neg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_share/zfs_share_010_neg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_share/zfs_share_011_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_snapshot/cleanup \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_snapshot/setup mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_snapshot/zfs_snapshot.cfg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_snapshot/zfs_snapshot_001_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_snapshot/zfs_snapshot_002_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_snapshot/zfs_snapshot_003_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_snapshot/zfs_snapshot_004_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_snapshot/zfs_snapshot_005_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_snapshot/zfs_snapshot_006_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_snapshot/zfs_snapshot_007_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_snapshot/zfs_snapshot_008_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_snapshot/zfs_snapshot_009_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_unmount/cleanup \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_unmount/setup mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_unmount/zfs_unmount.cfg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_unmount/zfs_unmount.kshlib \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_unmount/zfs_unmount_001_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_unmount/zfs_unmount_002_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_unmount/zfs_unmount_003_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_unmount/zfs_unmount_004_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_unmount/zfs_unmount_005_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_unmount/zfs_unmount_006_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_unmount/zfs_unmount_007_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_unmount/zfs_unmount_008_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_unmount/zfs_unmount_009_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_unmount/zfs_unmount_all_001_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_unshare/cleanup \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_unshare/setup mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_unshare/zfs_unshare_001_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_unshare/zfs_unshare_002_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_unshare/zfs_unshare_003_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_unshare/zfs_unshare_004_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_unshare/zfs_unshare_005_neg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_upgrade/cleanup \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zfs_upgrade/setup mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_upgrade/zfs_upgrade.kshlib \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_upgrade/zfs_upgrade_001_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_upgrade/zfs_upgrade_002_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_upgrade/zfs_upgrade_003_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_upgrade/zfs_upgrade_004_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_upgrade/zfs_upgrade_005_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_upgrade/zfs_upgrade_006_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zfs_upgrade/zfs_upgrade_007_neg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool/cleanup mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool/setup mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool/zpool_001_neg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool/zpool_002_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool/zpool_003_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_add/cleanup mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_add/setup mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_add/zpool_add.cfg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_add/zpool_add.kshlib \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_add/zpool_add_001_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_add/zpool_add_002_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_add/zpool_add_003_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_add/zpool_add_004_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_add/zpool_add_005_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_add/zpool_add_006_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_add/zpool_add_007_neg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_add/zpool_add_008_neg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_add/zpool_add_009_neg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_attach/cleanup \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_attach/setup mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_attach/zpool_attach_001_neg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_clear/cleanup \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_clear/setup mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_clear/zpool_clear.cfg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_clear/zpool_clear_001_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_clear/zpool_clear_002_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_clear/zpool_clear_003_neg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_create/cleanup \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_create/setup mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_create/zpool_create.cfg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_create/zpool_create.shlib \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_create/zpool_create_001_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_create/zpool_create_002_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_create/zpool_create_003_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_create/zpool_create_004_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_create/zpool_create_005_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_create/zpool_create_006_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_create/zpool_create_007_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_create/zpool_create_008_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_create/zpool_create_009_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_create/zpool_create_010_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_create/zpool_create_011_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_create/zpool_create_012_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_create/zpool_create_013_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_create/zpool_create_014_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_create/zpool_create_015_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_create/zpool_create_016_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_create/zpool_create_017_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_create/zpool_create_018_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_create/zpool_create_019_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_create/zpool_create_020_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_create/zpool_create_021_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_create/zpool_create_022_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_create/zpool_create_023_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_create/zpool_create_features_001_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_create/zpool_create_features_002_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_create/zpool_create_features_003_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_create/zpool_create_features_004_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_destroy/zpool_destroy.cfg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_destroy/zpool_destroy_001_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_destroy/zpool_destroy_002_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_destroy/zpool_destroy_003_neg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_detach/cleanup \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_detach/setup mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_detach/zpool_detach_001_neg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_expand/cleanup \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_expand/setup mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_expand/zpool_expand.cfg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_expand/zpool_expand_001_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_expand/zpool_expand_002_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_expand/zpool_expand_003_neg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_export/cleanup \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_export/setup mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_export/zpool_export_001_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_export/zpool_export_002_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_export/zpool_export_003_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_export/zpool_export_004_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_get/cleanup mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_get/setup mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_get/zpool_get.cfg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_get/zpool_get_001_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_get/zpool_get_002_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_get/zpool_get_003_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_get/zpool_get_004_neg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_history/cleanup \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_history/setup \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_history/zpool_history_001_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_history/zpool_history_002_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_import/blockfiles/unclean_export.dat.bz2 \
+ mode=0444
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_import/cleanup \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_import/setup mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import.cfg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_001_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_002_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_003_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_004_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_005_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_006_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_007_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_008_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_009_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_010_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_011_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_012_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_013_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_all_001_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_features_001_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_features_002_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_features_003_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_missing_001_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_missing_002_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_missing_003_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_rename_001_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_offline/cleanup \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_offline/setup \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_offline/zpool_offline_001_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_offline/zpool_offline_002_neg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_online/cleanup \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_online/setup mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_online/zpool_online_001_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_online/zpool_online_002_neg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_remove/cleanup \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_remove/setup mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_remove/zpool_remove.cfg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_remove/zpool_remove_001_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_remove/zpool_remove_002_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_remove/zpool_remove_003_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_replace/cleanup \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_replace/setup \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_replace/zpool_replace_001_neg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_scrub/cleanup \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_scrub/setup mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_scrub/zpool_scrub.cfg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_scrub/zpool_scrub_001_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_scrub/zpool_scrub_002_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_scrub/zpool_scrub_003_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_scrub/zpool_scrub_004_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_scrub/zpool_scrub_005_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_set/zpool_set_001_pos \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_set/zpool_set_002_neg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_set/zpool_set_003_neg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_status/cleanup \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_status/setup mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_status/zpool_status_001_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_status/zpool_status_002_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-broken-mirror1.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-broken-mirror2.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v1.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v10.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v11.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v12.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v13.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v14.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v15.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v1mirror1.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v1mirror2.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v1mirror3.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v1raidz1.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v1raidz2.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v1raidz3.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v1stripe1.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v1stripe2.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v1stripe3.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v2.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v2mirror1.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v2mirror2.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v2mirror3.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v2raidz1.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v2raidz2.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v2raidz3.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v2stripe1.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v2stripe2.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v2stripe3.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v3.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v3hotspare1.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v3hotspare2.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v3hotspare3.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v3mirror1.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v3mirror2.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v3mirror3.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v3raidz1.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v3raidz2.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v3raidz21.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v3raidz22.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v3raidz23.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v3raidz3.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v3stripe1.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v3stripe2.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v3stripe3.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v4.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v5.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v6.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v7.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v8.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v9.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v999.dat.bz2 \
+ mode=0444
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-vBROKEN.dat.bz2 \
+ mode=0444
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/cleanup \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/setup \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/zpool_upgrade.cfg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/zpool_upgrade.kshlib \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/zpool_upgrade_001_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/zpool_upgrade_002_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/zpool_upgrade_003_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/zpool_upgrade_004_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/zpool_upgrade_005_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/zpool_upgrade_006_neg \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/zpool_upgrade_007_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/zpool_upgrade_008_pos \
+ mode=0555
+file \
+ path=opt/zfs-tests/tests/functional/cli_root/zpool_upgrade/zpool_upgrade_009_neg \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/nopwrite/cleanup mode=0555
+file path=opt/zfs-tests/tests/functional/nopwrite/nopwrite.shlib mode=0555
+file path=opt/zfs-tests/tests/functional/nopwrite/nopwrite_copies mode=0555
+file path=opt/zfs-tests/tests/functional/nopwrite/nopwrite_mtime mode=0555
+file path=opt/zfs-tests/tests/functional/nopwrite/nopwrite_negative mode=0555
+file path=opt/zfs-tests/tests/functional/nopwrite/nopwrite_promoted_clone \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/nopwrite/nopwrite_recsize mode=0555
+file path=opt/zfs-tests/tests/functional/nopwrite/nopwrite_sync mode=0555
+file path=opt/zfs-tests/tests/functional/nopwrite/nopwrite_varying_compression \
+ mode=0555
+file path=opt/zfs-tests/tests/functional/nopwrite/nopwrite_volume mode=0555
+file path=opt/zfs-tests/tests/functional/nopwrite/setup mode=0555
+file path=opt/zfs-tests/tests/functional/truncate/cleanup mode=0555
+file path=opt/zfs-tests/tests/functional/truncate/setup mode=0555
+file path=opt/zfs-tests/tests/functional/truncate/truncate.cfg mode=0555
+file path=opt/zfs-tests/tests/functional/truncate/truncate_001_pos mode=0555
+file path=opt/zfs-tests/tests/functional/truncate/truncate_002_pos mode=0555
+license cr_Sun license=cr_Sun
+license lic_CDDL license=lic_CDDL
+depend fmri=system/file-system/zfs/tests type=require
+depend fmri=system/test/testrunner type=require
View
20 usr/src/test/Makefile
@@ -0,0 +1,20 @@
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL"), version 1.0.
+# You may only use this file in accordance with the terms of version
+# 1.0 of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source. A copy of the CDDL is also available via the Internet at
+# http://www.illumos.org/license/CDDL.
+#
+
+#
+# Copyright (c) 2012 by Delphix. All rights reserved.
+#
+
+.PARALLEL: $(SUBDIRS)
+
+SUBDIRS = os-tests test-runner zfs-tests
+
+include Makefile.com
View
35 usr/src/test/Makefile.com
@@ -0,0 +1,35 @@
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL"), version 1.0.
+# You may only use this file in accordance with the terms of version
+# 1.0 of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source. A copy of the CDDL is also available via the Internet at
+# http://www.illumos.org/license/CDDL.
+#
+
+#
+# Copyright (c) 2012 by Delphix. All rights reserved.
+#
+
+all := TARGET = all
+install := TARGET = install
+clean := TARGET = clean
+clobber := TARGET = clobber
+lint := TARGET = lint
+
+.KEEP_STATE:
+
+all clean clobber install lint: $(SUBDIRS)
+
+lint_PROG:
+ $(LINT.c) $(PROG).c $(LDLIBS)
+
+lint_SRCS:
+ $(LINT.c) $(SRCS) $(LDLIBS)
+
+$(SUBDIRS): FRC
+ @cd $@; pwd; $(MAKE) $(TARGET)
+
+FRC:
View
20 usr/src/test/os-tests/Makefile
@@ -0,0 +1,20 @@
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL"), version 1.0.
+# You may only use this file in accordance with the terms of version
+# 1.0 of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source. A copy of the CDDL is also available via the Internet at
+# http://www.illumos.org/license/CDDL.
+#
+
+#
+# Copyright (c) 2012 by Delphix. All rights reserved.
+#
+
+.PARALLEL: $(SUBDIRS)
+
+SUBDIRS = cmd runfiles tests doc
+
+include $(SRC)/test/Makefile.com
View
37 usr/src/test/os-tests/cmd/Makefile
@@ -0,0 +1,37 @@
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL"), version 1.0.
+# You may only use this file in accordance with the terms of version
+# 1.0 of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source. A copy of the CDDL is also available via the Internet at
+# http://www.illumos.org/license/CDDL.
+#
+
+#
+# Copyright (c) 2012 by Delphix. All rights reserved.
+#
+
+include $(SRC)/Makefile.master
+include $(SRC)/test/Makefile.com
+
+ROOTOPTPKG = $(ROOT)/opt/os-tests
+ROOTBIN = $(ROOTOPTPKG)/bin
+
+PROGS = ostest
+
+CMDS = $(PROGS:%=$(ROOTBIN)/%)
+$(CMDS) := FILEMODE = 0555
+
+all lint clean clobber:
+
+install: $(CMDS)
+
+$(CMDS): $(ROOTBIN)
+
+$(ROOTBIN):
+ $(INS.dir)
+
+$(ROOTBIN)/%: %.ksh
+ $(INS.rename)
View
54 usr/src/test/os-tests/cmd/ostest.ksh
@@ -0,0 +1,54 @@
+#!/usr/bin/ksh
+
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL"), version 1.0.
+# You may only use this file in accordance with the terms of version
+# 1.0 of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source. A copy of the CDDL is also available via the Internet at
+# http://www.illumos.org/license/CDDL.
+#
+
+#
+# Copyright (c) 2012 by Delphix. All rights reserved.
+#
+
+export OS_TESTS="/opt/os-tests"
+runner="/opt/test-runner/bin/run"
+
+function fail
+{
+ echo $1
+ exit ${2:-1}
+}
+
+function find_runfile
+{
+ typeset distro=
+ if [[ -d /opt/delphix && -h /etc/delphix/version ]]; then
+ distro=delphix
+ elif [[ 0 -ne $(grep -c OpenIndiana /etc/release 2>/dev/null) ]]; then
+ distro=openindiana
+ fi
+
+ [[ -n $distro ]] && echo $OS_TESTS/runfiles/$distro.run
+}
+
+while getopts c: c; do
+ case $c in
+ 'c')
+ runfile=$OPTARG
+ [[ -f $runfile ]] || fail "Cannot read file: $runfile"
+ ;;
+ esac
+done
+shift $((OPTIND - 1))
+
+[[ -z $runfile ]] && runfile=$(find_runfile)
+[[ -z $runfile ]] && fail "Couldn't determine distro"
+
+$runner -c $runfile
+
+exit $?
View
35 usr/src/test/os-tests/doc/Makefile
@@ -0,0 +1,35 @@
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL"), version 1.0.
+# You may only use this file in accordance with the terms of version
+# 1.0 of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source. A copy of the CDDL is also available via the Internet at
+# http://www.illumos.org/license/CDDL.
+#
+
+#
+# Copyright (c) 2012 by Delphix. All rights reserved.
+#
+
+include $(SRC)/Makefile.master
+
+READMES = README
+
+ROOTOPTPKG = $(ROOT)/opt/os-tests
+
+FILES = $(READMES:%=$(ROOTOPTPKG)/%)
+$(FILES) := FILEMODE = 0444
+
+all: $(READMES)
+
+install: $(ROOTOPTPKG) $(FILES)
+
+clean lint clobber:
+
+$(ROOTOPTPKG):
+ $(INS.dir)
+
+$(ROOTOPTPKG)/%: %
+ $(INS.file)
View
59 usr/src/test/os-tests/doc/README
@@ -0,0 +1,59 @@
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL"), version 1.0.
+# You may only use this file in accordance with the terms of version
+# 1.0 of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source. A copy of the CDDL is also available via the Internet at
+# http://www.illumos.org/license/CDDL.
+#
+
+#
+# Copyright (c) 2012 by Delphix. All rights reserved.
+#
+
+OS Unit Test Suite README
+
+1. Building and installing the OS Unit Test Suite
+2. Running the OS Unit Test Suite
+3. Test results
+
+--------------------------------------------------------------------------------
+
+1. Building and installing the OS Unit Test Suite
+
+The OS Unit Test Suite runs under the testrunner framework (which can be
+installed as pkg:/system/test/testrunner). To build both the OS Unit Test Suite
+and the testrunner without running a full nightly:
+
+ build_machine$ bldenv [-d] <your_env_file>
+ build_machine$ cd $SRC/test
+ build_machine$ dmake install
+ build_machine$ cd $SRC/pkg
+ build_machine$ dmake install
+
+Then set the publisher on the test machine to point to your repository and
+install the OS Unit Test Suite.
+
+ test_machine# pkg install pkg:/system/test/zfstest
+
+Note, the framework will be installed automatically, as the OS Unit Test Suite
+depends on it.
+
+2. Running the OS Unit Test Suite
+
+The pre-requisites for running the OS Unit Test Suite are:
+ - A non-root user with the ability to sudo(1M) to root without a
+ password or the root user must run the test.
+
+Once the pre-requisites are satisfied, simply run the ostest script:
+
+ test_machine$ /opt/os-tests/bin/ostest
+
+3. Test results
+
+While the OS Unit Test Suite is running, one informational line is printed at
+the end of each test, and a results summary is printed at the end of the run.
+The results summary includes the location of the complete logs, which is of the
+form /var/tmp/test_results/<ISO 8601 date>.
View
39 usr/src/test/os-tests/runfiles/Makefile
@@ -0,0 +1,39 @@
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL"), version 1.0.
+# You may only use this file in accordance with the terms of version
+# 1.0 of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source. A copy of the CDDL is also available via the Internet at
+# http://www.illumos.org/license/CDDL.
+#
+
+#
+# Copyright (c) 2012 by Delphix. All rights reserved.
+#
+
+include $(SRC)/Makefile.master
+
+SRCS = delphix.run \
+ openindiana.run
+
+ROOTOPTPKG = $(ROOT)/opt/os-tests
+RUNFILES = $(ROOTOPTPKG)/runfiles
+
+CMDS = $(SRCS:%=$(RUNFILES)/%)
+$(CMDS) := FILEMODE = 0444
+
+all: $(SRCS)
+
+install: $(CMDS)
+
+clean lint clobber:
+
+$(CMDS): $(RUNFILES) $(SRCS)
+
+$(RUNFILES):
+ $(INS.dir)
+
+$(RUNFILES)/%: %
+ $(INS.file)
View
26 usr/src/test/os-tests/runfiles/delphix.run
@@ -0,0 +1,26 @@
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL"), version 1.0.
+# You may only use this file in accordance with the terms of version
+# 1.0 of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source. A copy of the CDDL is also available via the Internet at
+# http://www.illumos.org/license/CDDL.
+#
+
+#
+# Copyright (c) 2012 by Delphix. All rights reserved.
+#
+
+[DEFAULT]
+pre =
+verbose = False
+quiet = False
+user = root
+timeout = 60
+post =
+outputdir = /var/tmp/test_results
+
+[/opt/os-tests/tests/poll_test]
+
View
26 usr/src/test/os-tests/runfiles/openindiana.run
@@ -0,0 +1,26 @@
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL"), version 1.0.
+# You may only use this file in accordance with the terms of version
+# 1.0 of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source. A copy of the CDDL is also available via the Internet at
+# http://www.illumos.org/license/CDDL.
+#
+
+#
+# Copyright (c) 2012 by Delphix. All rights reserved.
+#
+
+[DEFAULT]
+pre =
+verbose = False
+quiet = False
+user = root
+timeout = 60
+post =
+outputdir = /var/tmp/test_results
+
+[/opt/os-tests/tests/poll_test]
+
View
18 usr/src/test/os-tests/tests/Makefile
@@ -0,0 +1,18 @@
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL"), version 1.0.
+# You may only use this file in accordance with the terms of version
+# 1.0 of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source. A copy of the CDDL is also available via the Internet at
+# http://www.illumos.org/license/CDDL.
+#
+
+#
+# Copyright (c) 2012 by Delphix. All rights reserved.
+#
+
+SUBDIRS = poll
+
+include $(SRC)/test/Makefile.com
View
57 usr/src/test/os-tests/tests/poll/Makefile
@@ -0,0 +1,57 @@
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL"), version 1.0.
+# You may only use this file in accordance with the terms of version
+# 1.0 of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source. A copy of the CDDL is also available via the Internet at
+# http://www.illumos.org/license/CDDL.
+#
+
+#
+# Copyright (c) 2012 by Delphix. All rights reserved.
+#
+
+include $(SRC)/cmd/Makefile.cmd
+include $(SRC)/test/Makefile.com
+
+PROG = poll_test
+OBJS = $(PROG:%=%.o)
+SRCS = $(OBJS:%.o=%.c)
+
+LDLIBS += -lsocket
+C99MODE = -xc99=%all
+
+ROOTOPTPKG = $(ROOT)/opt/os-tests
+TESTDIR = $(ROOTOPTPKG)/tests
+
+CMDS = $(PROG:%=$(TESTDIR)/%)
+$(CMDS) := FILEMODE = 0555
+
+all: $(PROG)
+
+$(PROG): $(OBJS)
+ $(LINK.c) $(OBJS) -o $@ $(LDLIBS)
+ $(POST_PROCESS)
+
+%.o: ../%.c
+ $(COMPILE.c) $<
+
+install: all $(CMDS)
+
+lint: lint_SRCS
+
+clobber: clean
+ -$(RM) $(PROG)
+
+clean:
+ -$(RM) $(OBJS)
+
+$(CMDS): $(TESTDIR) $(PROG)
+
+$(TESTDIR):
+ $(INS.dir)
+
+$(TESTDIR)/%: %
+ $(INS.file)
View
559 usr/src/test/os-tests/tests/poll/poll_test.c
@@ -0,0 +1,559 @@
+/*
+ * This file and its contents are supplied under the terms of the
+ * Common Development and Distribution License ("CDDL"), version 1.0.
+ * You may only use this file in accordance with the terms of version
+ * 1.0 of the CDDL.
+ *
+ * A full copy of the text of the CDDL should have accompanied this
+ * source. A copy of the CDDL is also available via the Internet at
+ * http://www.illumos.org/license/CDDL.
+ */
+
+/*
+ * Copyright (c) 2012 by Delphix. All rights reserved.
+ */
+
+#include <stdlib.h>
+#include <stdio.h>
+#include <stdarg.h>
+#include <string.h>
+#include <fcntl.h>
+#include <pthread.h>
+#include <assert.h>
+#include <errno.h>
+#include <ctype.h>
+#include <unistd.h>
+#include <poll.h>
+#include <sys/types.h>
+#include <sys/wait.h>
+#include <sys/stat.h>
+#include <sys/socket.h>
+#include <sys/devpoll.h>
+
+/*
+ * poll_test.c --
+ *
+ * This file implements some simple tests to verify the behavior of the
+ * poll system call and the DP_POLL ioctl on /dev/poll.
+ *
+ * Background:
+ *
+ * Several customers recently ran into an issue where threads in grizzly
+ * (java http server implementation) would randomly wake up from a java
+ * call to select against a java.nio.channels.Selector with no events ready
+ * but well before the specified timeout expired. The
+ * java.nio.channels.Selector select logic is implemented via /dev/poll.
+ * The selector opens /dev/poll, writes the file descriptors it wants to
+ * select on to the file descritpor, and then issues a DP_POLL ioctl to
+ * wait for events to be ready.
+ *
+ * The DP_POLL ioctl arguments include a relative timeout in milliseconds,
+ * according to man poll.7d the ioctl should block until events are ready,
+ * the timeout expires, or a signal was received. In this case we noticed
+ * that DP_POLL was returning before the timeout expired despite no events
+ * being ready and no signal being delivered.
+ *
+ * Using dtrace we discovered that DP_POLL was returning in cases where the
+ * system time was changed and the thread calling DP_POLL was woken up as
+ * a result of the process forking. The DP_POLL logic was in a loop
+ * checking if events were ready and then calling cv_waituntil_sig to
+ * block. cv_waituntil_sig will return -1 if the system time has changed,
+ * causing the DP_POLL to complete prematurely.
+ *
+ * Looking at the code it turns out the same problem exists in
+ * the implementation for poll.2 as well.
+ *
+ * Fix:
+ *
+ * The fix changes dpioctl and poll_common to use cv_relwaituntil_sig
+ * rather then cv_waituntil_sig. cv_reltimedwait_sig expects a
+ * relative timeout rather then an absolute timeout, so we avoid the
+ * problem.
+ *
+ * Test:
+ *
+ * The test verifies that changing the date does not wake up threads
+ * blocked processing a poll request or a DP_POLL ioctl. The test spawns
+ * one thread that changes the date and forks (to force the threads to
+ * wakeup from cv_reltimedwait_sig) every two seconds. The test spawns
+ * a second thread that issues poll / DP_POLL on an fd set that will
+ * never have events ready and verifies that it does not return until
+ * the specified timeout expires.
+ */
+
+/*
+ * The maximum amount of skew in seconds allowed between the
+ * expected an actual time that a test takes.
+ */
+#define TIME_DRIFT 1
+
+static pthread_mutex_t exitLock = PTHREAD_MUTEX_INITIALIZER;
+static pthread_cond_t exitCond = PTHREAD_COND_INITIALIZER;
+static int terminated = 0;
+
+/*
+ * Set via -d to enable debug logging
+ */
+static int debug = 0;
+
+static void
+debug_log(const char *format, ...)
+{
+ va_list args;
+
+ if (!debug) {
+ return;
+ }
+
+ (void) printf("DEBUG: ");
+
+ va_start(args, format);
+ (void) vprintf(format, args);
+ va_end(args);
+}
+
+static void
+test_start(const char *testName, const char *format, ...)
+{
+ va_list args;
+
+ (void) printf("TEST STARTING %s: ", testName);
+
+ va_start(args, format);
+ (void) vprintf(format, args);
+ va_end(args);
+ (void) fflush(stdout);
+}
+
+static void
+test_failed(const char *testName, const char *format, ...)
+{
+ va_list args;
+
+ (void) printf("TEST FAILED %s: ", testName);
+
+ va_start(args, format);
+ (void) vprintf(format, args);
+ va_end(args);
+
+ (void) exit(-1);
+}
+
+static void
+test_passed(const char *testName)
+{
+ (void) printf("TEST PASS: %s\n", testName);
+ (void) fflush(stdout);
+}
+
+static int
+check_time(time_t elapsed, time_t expected)
+{
+ time_t diff = expected - elapsed;
+
+ /*
+ * We may take slightly more or less time then expected,
+ * we allow for a small fudge factor if things completed
+ * before we expect them to.
+ */
+ return (elapsed >= expected || diff <= TIME_DRIFT);
+}
+
+static int
+poll_wrapper(pollfd_t *fds, nfds_t nfds, int timeout, time_t *elapsed)
+{
+ int ret;
+ time_t start = time(NULL);
+
+ debug_log("POLL start: (0x%p, %d, %d)\n", fds, nfds, timeout);
+
+ ret = poll(fds, nfds, timeout);
+
+ *elapsed = time(NULL) - start;
+
+ debug_log("POLL end: (0x%p, %d, %d) returns %d (elapse=%d)\n",
+ fds, nfds, timeout, ret, (*elapsed));
+
+ return (ret);
+}
+
+static int
+dppoll(int pollfd, pollfd_t *fds, nfds_t nfds, int timeout, time_t *elapsed)
+{
+ struct dvpoll arg;
+ int ret;
+ time_t start = time(NULL);
+
+ arg.dp_fds = fds;
+ arg.dp_nfds = nfds;
+ arg.dp_timeout = timeout;
+
+ debug_log("DP_POLL start: (0x%p, %d, %d)\n", fds, nfds, timeout);
+
+ ret = ioctl(pollfd, DP_POLL, &arg);
+
+ *elapsed = time(NULL) - start;
+
+ debug_log("DP_POLL end: (0x%p, %d, %d) returns %d (elapse=%d)\n",
+ fds, arg.dp_nfds, arg.dp_timeout, ret, (*elapsed));
+
+ return (ret);
+}
+
+static void
+clear_fd(const char *testName, int pollfd, int testfd)
+{
+ int ret;
+ pollfd_t fd;
+
+ fd.fd = testfd;
+ fd.events = POLLREMOVE;
+ fd.revents = 0;
+
+ ret = write(pollfd, &fd, sizeof (pollfd_t));
+
+ if (ret != sizeof (pollfd_t)) {
+ if (ret < 0) {
+ test_failed(testName, "Failed to clear fd %d: %s",
+ testfd, strerror(ret));
+ }
+
+
+ test_failed(testName, "Failed to clear fd %d: %d", testfd, ret);
+ }
+}
+
+/*
+ * TEST: poll with no FDs set, verify we wait the appropriate amount of time.
+ */
+static void
+poll_no_fd_test(void)
+{
+ const char *testName = __func__;
+ time_t elapsed;
+ int timeout = 10;
+ int ret;
+
+ test_start(testName, "poll for %d sec with no fds\n", timeout);
+
+ ret = poll_wrapper(NULL, 0, timeout * 1000, &elapsed);
+
+ if (ret != 0) {
+ test_failed(testName, "POLL returns %d (expected 0)\n", ret);
+ }
+
+ if (!check_time(elapsed, timeout)) {
+ test_failed(testName, "took %d (expected %d)\n",
+ elapsed, timeout);
+ }
+
+ test_passed(testName);
+}
+
+/*
+ * TEST: POLL with a valid FD set, verify that we wait the appropriate amount
+ * of time.
+ */
+static void
+poll_with_fds_test(int testfd)
+{
+ const char *testName = __func__;
+ time_t elapsed;
+ int timeout = 10;
+ int ret;
+ pollfd_t fd;
+
+ fd.fd = testfd;
+ fd.events = 0;
+ fd.revents = 0;
+
+ test_start(testName, "poll for %d sec with fds\n", timeout);
+
+ ret = poll_wrapper(&fd, 1, timeout * 1000, &elapsed);
+
+ if (ret != 0) {
+ test_failed(testName, "POLL returns %d (expected 0)\n", ret);
+ }
+
+ if (!check_time(elapsed, timeout)) {
+ test_failed(testName, "took %d (expected %d)\n",
+ elapsed, timeout);
+ }
+
+ test_passed(testName);
+}
+
+/*
+ * TEST: DP_POLL with no FDs set, verify we wait the appropriate
+ * amount of time.
+ */
+static void
+dev_poll_no_fd_test(int pollfd)
+{
+ const char *testName = __func__;
+ time_t elapsed;
+ int timeout = 10;
+ int ret;
+
+ test_start(testName, "poll for %d sec with no fds\n", timeout);
+
+ ret = dppoll(pollfd, NULL, 0, timeout * 1000, &elapsed);
+
+ if (ret != 0) {
+ test_failed(testName, "DP_POLL returns %d (expected 0)\n", ret);
+ }
+
+ if (!check_time(elapsed, timeout)) {
+ test_failed(testName, "took %d (expected %d)\n",
+ elapsed, timeout);
+ }
+
+ test_passed(testName);
+}
+
+/*
+ * TEST: DP_POLL with a valid FD set, verify that we wait
+ * the appropriate amount of time.
+ */
+static void
+dev_poll_with_fds_test(int pollfd, int testfd)
+{
+ const char *testName = __func__;
+ time_t elapsed;
+ int timeout = 10;
+ int ret;
+ pollfd_t fds[5];
+
+ test_start(testName, "poll for %d sec with fds\n", timeout);
+
+ /*
+ * Clear the FD in case it's already in the cached set
+ */
+ clear_fd(testName, pollfd, testfd);
+
+ /*
+ * Add the FD with POLLIN
+ */
+ fds[0].fd = testfd;
+ fds[0].events = POLLIN;
+ fds[0].revents = 0;