]> git.proxmox.com Git - mirror_zfs.git/blob - tests/zfs-tests/tests/functional/removal/removal_check_space.ksh
OpenZFS 7614, 9064 - zfs device evacuation/removal
[mirror_zfs.git] / tests / zfs-tests / tests / functional / removal / removal_check_space.ksh
1 #! /bin/ksh -p
2 #
3 # CDDL HEADER START
4 #
5 # This file and its contents are supplied under the terms of the
6 # Common Development and Distribution License ("CDDL"), version 1.0.
7 # You may only use this file in accordance with the terms of version
8 # 1.0 of the CDDL.
9 #
10 # A full copy of the text of the CDDL should have accompanied this
11 # source. A copy of the CDDL is also available via the Internet at
12 # http://www.illumos.org/license/CDDL.
13 #
14 # CDDL HEADER END
15 #
16
17 #
18 # Copyright (c) 2014, 2016 by Delphix. All rights reserved.
19 #
20
21 . $STF_SUITE/include/libtest.shlib
22 . $STF_SUITE/tests/functional/removal/removal.kshlib
23
24 TMPDIR=${TMPDIR:-$TEST_BASE_DIR}
25 log_must mkfile $MINVDEVSIZE $TMPDIR/dsk1
26 log_must mkfile $MINVDEVSIZE $TMPDIR/dsk2
27 DISKS="$TMPDIR/dsk1 $TMPDIR/dsk2"
28 REMOVEDISK=$TMPDIR/dsk1
29
30 log_must default_setup_noexit "$DISKS"
31
32 function cleanup
33 {
34 default_cleanup_noexit
35 log_must rm -f $DISKS
36 }
37 log_onexit cleanup
38
39 # Write a little more than half the pool.
40 log_must dd if=/dev/urandom of=/$TESTDIR/$TESTFILE0 bs=$((2**20)) \
41 count=$((MINVDEVSIZE / (1024 * 1024)))
42 log_mustnot zpool remove $TESTPOOL $TMPDIR/dsk1
43
44 log_pass "Removal will not succeed if insufficient space."