summaryrefslogtreecommitdiff
path: root/usr
diff options
context:
space:
mode:
authorVictor Latushkin <Victor.Latushkin@Sun.COM>2010-02-24 17:04:57 -0800
committerVictor Latushkin <Victor.Latushkin@Sun.COM>2010-02-24 17:04:57 -0800
commite69acc927b15c46de46ae637e53e1b808990a5bc (patch)
tree1cbe9f28aa38627b6c4587dd876b52889b54afef /usr
parent4b44c88c2405f39ecccf8eda4069574f3f137ab9 (diff)
downloadillumos-gate-e69acc927b15c46de46ae637e53e1b808990a5bc.tar.gz
6915289 check for completed replacement in spa_vdev_resilver_done_hunt() in incomplete
Diffstat (limited to 'usr')
-rw-r--r--usr/src/uts/common/fs/zfs/spa.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/usr/src/uts/common/fs/zfs/spa.c b/usr/src/uts/common/fs/zfs/spa.c
index 630cef0a2c..90777575fe 100644
--- a/usr/src/uts/common/fs/zfs/spa.c
+++ b/usr/src/uts/common/fs/zfs/spa.c
@@ -4569,6 +4569,7 @@ spa_vdev_resilver_done_hunt(vdev_t *vd)
newvd = vd->vdev_child[1];
if (vdev_dtl_empty(newvd, DTL_MISSING) &&
+ vdev_dtl_empty(newvd, DTL_OUTAGE) &&
!vdev_dtl_required(oldvd))
return (oldvd);
}
@@ -4582,6 +4583,7 @@ spa_vdev_resilver_done_hunt(vdev_t *vd)
if (newvd->vdev_unspare &&
vdev_dtl_empty(newvd, DTL_MISSING) &&
+ vdev_dtl_empty(newvd, DTL_OUTAGE) &&
!vdev_dtl_required(oldvd)) {
newvd->vdev_unspare = 0;
return (oldvd);