5 # The contents of this file are subject to the terms of the
6 # Common Development and Distribution License (the "License").
7 # You may not use this file except in compliance with the License.
9 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
10 # or http://www.opensolaris.org/os/licensing.
11 # See the License for the specific language governing permissions
12 # and limitations under the License.
14 # When distributing Covered Code, include this CDDL HEADER in each
15 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
16 # If applicable, add the following below this CDDL HEADER, with the
17 # fields enclosed by brackets "[]" replaced with your own identifying
18 # information: Portions Copyright [yyyy] [name of copyright owner]
24 # Copyright 2008 Sun Microsystems, Inc. All rights reserved.
25 # Use is subject to license terms.
29 # Copyright (c) 2013, 2016 by Delphix. All rights reserved.
32 .
$STF_SUITE/include
/libtest.shlib
33 .
$STF_SUITE/tests
/functional
/refreserv
/refreserv.cfg
37 # Reservations are enforced using the maximum of 'reserv' and 'refreserv'
40 # 1. Setting quota for parent filesystem.
41 # 2. Setting reservation and refreservation for sub-filesystem.
42 # 3. Verify the sub-fs reservation are enforced by the maximum of 'reserv'
46 verify_runnable
"both"
50 log_must zfs destroy
-rf $TESTPOOL/$TESTFS
51 log_must zfs create
$TESTPOOL/$TESTFS
52 log_must zfs
set mountpoint
=$TESTDIR $TESTPOOL/$TESTFS
55 log_assert
"Reservations are enforced using the maximum of " \
56 "'reserv' and 'refreserv'"
59 fs
=$TESTPOOL/$TESTFS ; subfs
=$fs/subfs
60 log_must zfs create
$subfs
61 log_must zfs
set quota
=25M
$fs
63 log_must zfs
set reserv
=10M
$subfs
64 log_must zfs
set refreserv
=20M
$subfs
65 mntpnt
=$
(get_prop mountpoint
$fs)
66 log_mustnot mkfile
15M
$mntpnt/$TESTFILE
68 log_must
rm -f $mntpnt/$TESTFILE
70 log_must zfs
set reserv
=20M
$subfs
71 log_must zfs
set refreserv
=10M
$subfs
72 log_mustnot mkfile
15M
$mntpnt/$TESTFILE
74 log_pass
"Reservations are enforced using the maximum of " \
75 "'reserv' and 'refreserv'"