usr/src/uts/common/fs/zfs/zio.c
changeset 5688 c0b02c8fd2c0
parent 5530 4ed96167d864
child 6245 1a2a7cfb9f26
--- a/usr/src/uts/common/fs/zfs/zio.c	Thu Dec 13 15:55:35 2007 -0800
+++ b/usr/src/uts/common/fs/zfs/zio.c	Thu Dec 13 16:31:22 2007 -0800
@@ -118,8 +118,7 @@
  * stage set or will have it later in it's lifetime.
  */
 #define	IO_IS_ALLOCATING(zio) \
-	((zio)->io_orig_pipeline == ZIO_WRITE_PIPELINE ||		\
-	(zio)->io_pipeline & (1U << ZIO_STAGE_DVA_ALLOCATE))
+	((zio)->io_orig_pipeline & (1U << ZIO_STAGE_DVA_ALLOCATE))
 
 void
 zio_init(void)
@@ -1324,7 +1323,6 @@
 			BP_SET_LSIZE(bp, lsize);
 			BP_SET_PSIZE(bp, csize);
 			BP_SET_COMPRESS(bp, compress);
-			zio->io_pipeline = ZIO_WRITE_ALLOCATE_PIPELINE;
 		}
 	}
 
@@ -1813,8 +1811,7 @@
 
 		zio->io_retries++;
 		zio->io_error = 0;
-		zio->io_flags &= ZIO_FLAG_VDEV_INHERIT |
-		    ZIO_FLAG_CONFIG_GRABBED;
+		zio->io_flags &= ZIO_FLAG_RETRY_INHERIT;
 		/* XXPOLICY */
 		zio->io_flags &= ~ZIO_FLAG_FAILFAST;
 		zio->io_flags |= ZIO_FLAG_DONT_CACHE;
@@ -2077,24 +2074,9 @@
  * start an async flush of the write cache for this vdev
  */
 void
-zio_flush_vdev(spa_t *spa, uint64_t vdev, zio_t **zio)
+zio_flush(zio_t *zio, vdev_t *vd)
 {
-	vdev_t *vd;
-
-	/*
-	 * Lock out configuration changes.
-	 */
-	spa_config_enter(spa, RW_READER, FTAG);
-
-	if (*zio == NULL)
-		*zio = zio_root(spa, NULL, NULL, ZIO_FLAG_CANFAIL);
-
-	vd = vdev_lookup_top(spa, vdev);
-	ASSERT(vd);
-
-	(void) zio_nowait(zio_ioctl(*zio, spa, vd, DKIOCFLUSHWRITECACHE,
+	zio_nowait(zio_ioctl(zio, zio->io_spa, vd, DKIOCFLUSHWRITECACHE,
 	    NULL, NULL, ZIO_PRIORITY_NOW,
 	    ZIO_FLAG_CANFAIL | ZIO_FLAG_DONT_RETRY));
-
-	spa_config_exit(spa, FTAG);
 }