4 # The contents of this file are subject to the terms of the
5 # Common Development and Distribution License (the "License").
6 # You may not use this file except in compliance with the License.
8 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 # or http://www.opensolaris.org/os/licensing.
10 # See the License for the specific language governing permissions
11 # and limitations under the License.
13 # When distributing Covered Code, include this CDDL HEADER in each
14 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 # If applicable, add the following below this CDDL HEADER, with the
16 # fields enclosed by brackets "[]" replaced with your own identifying
17 # information: Portions Copyright [yyyy] [name of copyright owner]
23 # Copyright 2009 Sun Microsystems, Inc. All rights reserved.
24 # Use is subject to license terms.
28 # Copyright (c) 2016 by Delphix. All rights reserved.
31 . $STF_SUITE/include/libtest.shlib
33 DEPTH_FS=$TESTPOOL/depth_fs
36 set -A depth_options "d 0" "d 1" "d 2" "d 4" "d 32"
37 set -A depth_array 0 1 2 4 32
40 # Setup multiple depths datasets, including fs, volumes, snapshots and bookmarks.
42 function depth_fs_setup
47 log_must zfs create $DEPTH_FS
50 while (( i<=MAX_DEPTH )); do
55 fslist=$(zfs list -rH -t filesystem -o name $DEPTH_FS|grep depth"$k"$)
56 if (( $? != 0 )); then
57 log_fail "No depth$k filesystem"
62 while (( j<=DS_COUNT )); do
63 log_must zfs create $fs/fs_"$j"_depth"$i"
64 if is_global_zone ; then
65 log_must zfs create -V 8M $fs/vol_"$j"_depth"$i"
67 log_must zfs snapshot $fs@snap_"$j"_depth"$i"
68 log_must zfs bookmark $fs@snap_"$j"_depth"$i" '#bookmark'_"$j"_depth"$i"
77 # Cleanup multiple depths filesystem.
79 function depth_fs_cleanup
81 log_must zfs destroy -rR $DEPTH_FS