OpenZFS 9434 - Speculative prefetch is blocked by device removal code
Device removal code does not set spa_indirect_vdevs_loaded for pools that never experienced device removal. At least one visual consequence of it is completely blocked speculative prefetcher. This patch sets the variable in such situations. Authored by: Alexander Motin <mav@FreeBSD.org> Reviewed by: Matthew Ahrens <mahrens@delphix.com> Reviewed by: Prashanth Sreenivasa <pks@delphix.com> Reviewed-by: George Melikov <mail@gmelikov.ru> Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Reviewed-by: Tim Chase <tim@chase2k.com> Approved by: Matt Ahrens <mahrens@delphix.com> Ported-by: Giuseppe Di Natale <dinatale2@llnl.gov> OpenZFS-issue: https://www.illumos.org/issues/9434 OpenZFS-commit: https://github.com/openzfs/openzfs/commit/16127b627b Closes #7480
This commit is contained in:
parent
eb201f50ac
commit
20507534d4
|
@ -352,6 +352,7 @@ spa_remove_init(spa_t *spa)
|
|||
spa->spa_removing_phys.sr_state = DSS_NONE;
|
||||
spa->spa_removing_phys.sr_removing_vdev = -1;
|
||||
spa->spa_removing_phys.sr_prev_indirect_vdev = -1;
|
||||
spa->spa_indirect_vdevs_loaded = B_TRUE;
|
||||
return (0);
|
||||
} else if (error != 0) {
|
||||
return (error);
|
||||
|
|
Loading…
Reference in New Issue