zed: Prevent special vdev to be replaced by hot spare

Special vdevs should not be replaced by a hot spare.
Log vdevs already support this, extending the
functionality for special vdevs.

Reviewed-by: Ryan Moeller <ryan@iXsystems.com>
Reviewed-by: Tony Hutter <hutter2@llnl.gov>
Reviewed-by: Richard Yao <richard.yao@alumni.stonybrook.edu>
Reviewed-by: Alexander Motin <mav@FreeBSD.org>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Ameer Hamza <ahamza@ixsystems.com>
Closes #14129
This commit is contained in:
Ameer Hamza
2022-11-04 23:33:47 +05:00
committed by GitHub
parent 73b8f700b6
commit c23738c70e
2 changed files with 9 additions and 2 deletions
@@ -121,6 +121,11 @@ done
# the removed data device
for conf in "${poolconfs[@]}"
do
# special vdev can not be replaced by a hot spare
if [[ $conf = *"special mirror"* ]]; then
continue
fi
# 1. Create a pool with a spare
log_must zpool create -f $TESTPOOL $conf
block_device_wait ${DEV_DSKDIR}/${removedev}