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, 2017 by Delphix. All rights reserved. 19# 20 21. $STF_SUITE/include/libtest.shlib 22. $STF_SUITE/tests/functional/removal/removal.kshlib 23 24function set_metaslab_force_ganging # new_value 25{ 26 typeset new_value=$1 27 echo "metaslab_force_ganging/W $new_value" | mdb -kw 28} 29 30function cleanup 31{ 32 log_must set_metaslab_force_ganging 0t$((2**17 + 1)) 33 default_cleanup_noexit 34} 35 36default_setup_noexit "$DISKS" 37log_must set_metaslab_force_ganging 0t$((2**14)) 38log_onexit cleanup 39 40FILE_CONTENTS="Leeloo Dallas mul-ti-pass." 41 42echo $FILE_CONTENTS >$TESTDIR/$TESTFILE0 43log_must [ "x$(cat $TESTDIR/$TESTFILE0)" = "x$FILE_CONTENTS" ] 44log_must file_write -o create -f $TESTDIR/$TESTFILE1 -b $((2**20)) -c $((2**7)) 45 46log_must zpool remove $TESTPOOL $REMOVEDISK 47log_must wait_for_removal $TESTPOOL 48log_mustnot vdevs_in_pool $TESTPOOL $REMOVEDISK 49 50log_must dd if=/$TESTDIR/$TESTFILE0 of=/dev/null 51log_must [ "x$(cat $TESTDIR/$TESTFILE0)" = "x$FILE_CONTENTS" ] 52 53log_pass "Removed device not in use after removal." 54