svn commit: r331950 - head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs

Alexander Motin mav at FreeBSD.org
Tue Apr 3 21:16:42 UTC 2018


Author: mav
Date: Tue Apr  3 21:16:41 2018
New Revision: 331950
URL: https://svnweb.freebsd.org/changeset/base/331950

Log:
  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.

Modified:
  head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_removal.c

Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_removal.c
==============================================================================
--- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_removal.c	Tue Apr  3 21:08:10 2018	(r331949)
+++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_removal.c	Tue Apr  3 21:16:41 2018	(r331950)
@@ -368,6 +368,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);


More information about the svn-src-all mailing list