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# Checking if allocation_classes feature flag status is active after 24# creating a pool with a special device. 25# 26claim="Checking active allocation classes feature flag status successful." 27 28verify_runnable "global" 29 30log_assert $claim 31log_onexit cleanup 32 33log_must disk_setup 34 35typeset ac_value 36typeset stype="" 37typeset sdisks="" 38 39for type in "" "mirror" "raidz" 40do 41 if [ "$type" = "mirror" ]; then 42 stype="mirror" 43 sdisks="${CLASS_DISK0} ${CLASS_DISK1} ${CLASS_DISK2}" 44 elif [ "$type" = "raidz" ]; then 45 stype="mirror" 46 sdisks="${CLASS_DISK0} ${CLASS_DISK1}" 47 else 48 stype="" 49 sdisks="${CLASS_DISK0}" 50 fi 51 52 log_must zpool create $TESTPOOL $type $ZPOOL_DISKS \ 53 special $stype $sdisks 54 55 ac_value="$(zpool get -H -o property,value all | awk '/allocation_classes/ {print $2}')" 56 if [ "$ac_value" = "active" ]; then 57 log_note "feature@allocation_classes is active" 58 else 59 log_fail "feature@allocation_classes not active, \ 60 status = $ac_value" 61 fi 62 63 log_must zpool destroy -f $TESTPOOL 64done 65 66log_pass $claim 67