diff --git a/module/zfs/zio.c b/module/zfs/zio.c index 88d80af4e9..db9bb65fdd 100644 --- a/module/zfs/zio.c +++ b/module/zfs/zio.c @@ -1048,7 +1048,10 @@ zio_taskq_dispatch(zio_t *zio, enum zio_taskq_type q, boolean_t cutinline) { spa_t *spa = zio->io_spa; zio_type_t t = zio->io_type; - int flags = TQ_SLEEP | (cutinline ? TQ_FRONT : 0); + int flags; + + flags = (cutinline ? TQ_FRONT : 0); + flags |= ((q == ZIO_TASKQ_INTERRUPT) ? TQ_NOSLEEP : TQ_SLEEP); /* * If we're a config writer or a probe, the normal issue and