1*2fae26bdSAlan Somers#!/usr/local/bin/ksh93 -p 2*2fae26bdSAlan Somers# 3*2fae26bdSAlan Somers# CDDL HEADER START 4*2fae26bdSAlan Somers# 5*2fae26bdSAlan Somers# The contents of this file are subject to the terms of the 6*2fae26bdSAlan Somers# Common Development and Distribution License (the "License"). 7*2fae26bdSAlan Somers# You may not use this file except in compliance with the License. 8*2fae26bdSAlan Somers# 9*2fae26bdSAlan Somers# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 10*2fae26bdSAlan Somers# or http://www.opensolaris.org/os/licensing. 11*2fae26bdSAlan Somers# See the License for the specific language governing permissions 12*2fae26bdSAlan Somers# and limitations under the License. 13*2fae26bdSAlan Somers# 14*2fae26bdSAlan Somers# When distributing Covered Code, include this CDDL HEADER in each 15*2fae26bdSAlan Somers# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 16*2fae26bdSAlan Somers# If applicable, add the following below this CDDL HEADER, with the 17*2fae26bdSAlan Somers# fields enclosed by brackets "[]" replaced with your own identifying 18*2fae26bdSAlan Somers# information: Portions Copyright [yyyy] [name of copyright owner] 19*2fae26bdSAlan Somers# 20*2fae26bdSAlan Somers# CDDL HEADER END 21*2fae26bdSAlan Somers# 22*2fae26bdSAlan Somers 23*2fae26bdSAlan Somers# 24*2fae26bdSAlan Somers# Copyright 2007 Sun Microsystems, Inc. All rights reserved. 25*2fae26bdSAlan Somers# Use is subject to license terms. 26*2fae26bdSAlan Somers 27*2fae26bdSAlan Somers. $STF_SUITE/tests/slog/slog.kshlib 28*2fae26bdSAlan Somers 29*2fae26bdSAlan Somers################################################################################# 30*2fae26bdSAlan Somers# 31*2fae26bdSAlan Somers# __stc_assertion_start 32*2fae26bdSAlan Somers# 33*2fae26bdSAlan Somers# ID: slog_010_neg 34*2fae26bdSAlan Somers# 35*2fae26bdSAlan Somers# DESCRIPTION: 36*2fae26bdSAlan Somers# Slog device can not be replaced with spare device 37*2fae26bdSAlan Somers# 38*2fae26bdSAlan Somers# STRATEGY: 39*2fae26bdSAlan Somers# 1. Create a pool with hotspare and log devices. 40*2fae26bdSAlan Somers# 2. Verify slog device can not be replaced with hotspare device. 41*2fae26bdSAlan Somers# 3. Create pool2 with hotspare 42*2fae26bdSAlan Somers# 4. Verify slog device can not be replaced with hotspare device in pool2. 43*2fae26bdSAlan Somers# 44*2fae26bdSAlan Somers# TESTABILITY: explicit 45*2fae26bdSAlan Somers# 46*2fae26bdSAlan Somers# TEST_AUTOMATION_LEVEL: automated 47*2fae26bdSAlan Somers# 48*2fae26bdSAlan Somers# CODING_STATUS: COMPLETED (2007-06-20) 49*2fae26bdSAlan Somers# 50*2fae26bdSAlan Somers# __stc_assertion_end 51*2fae26bdSAlan Somers# 52*2fae26bdSAlan Somers################################################################################ 53*2fae26bdSAlan Somers 54*2fae26bdSAlan Somersverify_runnable "global" 55*2fae26bdSAlan Somers 56*2fae26bdSAlan Somerslog_assert "Slog device can not be replaced with spare device." 57*2fae26bdSAlan Somerslog_onexit cleanup 58*2fae26bdSAlan Somers 59*2fae26bdSAlan Somerslog_must $ZPOOL create $TESTPOOL $VDEV spare $SDEV log $LDEV 60*2fae26bdSAlan Somerssdev=$(random_get $SDEV) 61*2fae26bdSAlan Somersldev=$(random_get $LDEV) 62*2fae26bdSAlan Somerslog_mustnot $ZPOOL replace $TESTPOOL $ldev $sdev 63*2fae26bdSAlan Somerslog_mustnot verify_slog_device $TESTPOOL $sdev 'ONLINE' 64*2fae26bdSAlan Somerslog_must verify_slog_device $TESTPOOL $ldev 'ONLINE' 65*2fae26bdSAlan Somers 66*2fae26bdSAlan Somerslog_must $ZPOOL create $TESTPOOL2 $VDEV2 spare $SDEV2 67*2fae26bdSAlan Somerssdev2=$(random_get $SDEV2) 68*2fae26bdSAlan Somerslog_mustnot $ZPOOL replace $TESTPOOL $ldev $sdev2 69*2fae26bdSAlan Somerslog_mustnot $ZPOOL replace -f $TESTPOOL $ldev $sdev2 70*2fae26bdSAlan Somerslog_mustnot verify_slog_device $TESTPOOL $sdev2 'ONLINE' 71*2fae26bdSAlan Somerslog_must verify_slog_device $TESTPOOL $ldev 'ONLINE' 72*2fae26bdSAlan Somers 73*2fae26bdSAlan Somerslog_pass "Slog device can not be replaced with spare device." 74