diff options
author | Alexander Motin <mav@FreeBSD.org> | 2018-09-21 20:38:23 +0000 |
---|---|---|
committer | Alexander Motin <mav@FreeBSD.org> | 2018-09-21 20:38:23 +0000 |
commit | 4cabda1b4daa904600d6699312955b40e2e2e5ab (patch) | |
tree | 3e190afbc4d277a131f8448061b03daab4ec2d72 /uts | |
parent | e8551db9502c10ea24bfa13d42b301a2fd28e08c (diff) | |
download | src-4cabda1b4daa904600d6699312955b40e2e2e5ab.tar.gz src-4cabda1b4daa904600d6699312955b40e2e2e5ab.zip |
9700 ZFS resilvered mirror does not balance reads
illumos/illumos-gate@82f63c3c2bf5e4378706e8dcfccf717d67371be9
Reviewed by: Toomas Soome <tsoome@me.com>
Reviewed by: Sanjay Nadkarni <sanjay.nadkarni@nexenta.com>
Reviewed by: George Wilson <george.wilson@delphix.com>
Approved by: Matthew Ahrens <mahrens@delphix.com>
Author: Jerry Jelinek <jerry.jelinek@joyent.com>
Notes
Notes:
svn path=/vendor-sys/illumos/dist/; revision=338866
Diffstat (limited to 'uts')
-rw-r--r-- | uts/common/fs/zfs/spa.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/uts/common/fs/zfs/spa.c b/uts/common/fs/zfs/spa.c index b71710bbd7c5..599ae9faded9 100644 --- a/uts/common/fs/zfs/spa.c +++ b/uts/common/fs/zfs/spa.c @@ -27,7 +27,7 @@ * Copyright 2013 Saso Kiselkov. All rights reserved. * Copyright (c) 2014 Integros [integros.com] * Copyright 2016 Toomas Soome <tsoome@me.com> - * Copyright 2017 Joyent, Inc. + * Copyright 2018 Joyent, Inc. * Copyright (c) 2017 Datto Inc. * Copyright 2018 OmniOS Community Edition (OmniOSce) Association. */ @@ -6535,6 +6535,7 @@ spa_vdev_resilver_done_hunt(vdev_t *vd) /* * Check for a completed resilver with the 'unspare' flag set. + * Also potentially update faulted state. */ if (vd->vdev_ops == &vdev_spare_ops) { vdev_t *first = vd->vdev_child[0]; @@ -6556,6 +6557,8 @@ spa_vdev_resilver_done_hunt(vdev_t *vd) !vdev_dtl_required(oldvd)) return (oldvd); + vdev_propagate_state(vd); + /* * If there are more than two spares attached to a disk, * and those spares are not required, then we want to |