1#!/bin/ksh -p 2 3# 4# This file and its contents are supplied under the terms of the 5# Common Development and Distribution License ("CDDL"), version 1.0. 6# You may only use this file in accordance with the terms of version 7# 1.0 of the CDDL. 8# 9# A full copy of the text of the CDDL should have accompanied this 10# source. A copy of the CDDL is also available via the Internet at 11# http://www.illumos.org/license/CDDL. 12# 13 14# 15# Copyright (c) 2017, Intel Corporation. 16# Copyright (c) 2018 by Delphix. All rights reserved. 17# 18 19. $STF_SUITE/tests/functional/alloc_class/alloc_class.kshlib 20 21# 22# DESCRIPTION: 23# Adding a special device to a normal pool succeeds. 24# 25claim="Adding a special device to a normal pool succeeds." 26 27verify_runnable "global" 28 29log_assert $claim 30log_onexit cleanup 31 32log_must disk_setup 33 34for type in "" "mirror" "raidz" 35do 36 log_must zpool create $TESTPOOL $type $ZPOOL_DISKS 37 38 if [ "$type" = "mirror" ]; then 39 log_must zpool add $TESTPOOL special mirror \ 40 $CLASS_DISK0 $CLASS_DISK1 $CLASS_DISK2 41 log_must zpool iostat -H $TESTPOOL $CLASS_DISK0 42 log_must zpool iostat -H $TESTPOOL $CLASS_DISK1 43 log_must zpool iostat -H $TESTPOOL $CLASS_DISK2 44 elif [ "$type" = "raidz" ]; then 45 log_must zpool add $TESTPOOL special mirror \ 46 $CLASS_DISK0 $CLASS_DISK1 47 log_must zpool iostat -H $TESTPOOL $CLASS_DISK0 48 log_must zpool iostat -H $TESTPOOL $CLASS_DISK1 49 else 50 log_must zpool add $TESTPOOL special $CLASS_DISK0 51 log_must zpool iostat -H $TESTPOOL $CLASS_DISK0 52 fi 53 54 log_must zpool destroy -f $TESTPOOL 55done 56 57log_pass $claim 58