diff --git a/module/zfs/spa.c b/module/zfs/spa.c index fcb1711a2..2bd011a0c 100644 --- a/module/zfs/spa.c +++ b/module/zfs/spa.c @@ -6144,7 +6144,7 @@ spa_sync(spa_t *spa, uint64_t txg) spa->spa_sync_starttime = gethrtime(); taskq_cancel_id(system_taskq, spa->spa_deadman_tqid); spa->spa_deadman_tqid = taskq_dispatch_delay(system_taskq, - spa_deadman, spa, TQ_SLEEP, ddi_get_lbolt() + + spa_deadman, spa, TQ_PUSHPAGE, ddi_get_lbolt() + NSEC_TO_TICK(spa->spa_deadman_synctime)); /* diff --git a/module/zfs/spa_misc.c b/module/zfs/spa_misc.c index a5e13b5fb..9ba6e8963 100644 --- a/module/zfs/spa_misc.c +++ b/module/zfs/spa_misc.c @@ -444,7 +444,7 @@ spa_deadman(void *arg) vdev_deadman(spa->spa_root_vdev); spa->spa_deadman_tqid = taskq_dispatch_delay(system_taskq, - spa_deadman, spa, TQ_SLEEP, ddi_get_lbolt() + + spa_deadman, spa, TQ_PUSHPAGE, ddi_get_lbolt() + NSEC_TO_TICK(spa->spa_deadman_synctime)); }