summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrian Behlendorf <[email protected]>2013-09-25 09:29:30 -0700
committerBrian Behlendorf <[email protected]>2013-09-25 15:38:44 -0700
commitcbfa294de4937ae1af5845e9f765a3dc188cbcef (patch)
tree15cad2517a4fc716931481e98527ae3364809b67
parentf9f3f1ef983e987a2e09a49c3684405561fed634 (diff)
Fix spa_deadman() TQ_SLEEP warning
The spa_deadman() and spa_sync() functions can both be run in the spa_sync context and therefore should use TQ_PUSHPAGE instead of TQ_SLEEP. Signed-off-by: Brian Behlendorf <[email protected]> Closes #1734 Closes #1749
-rw-r--r--module/zfs/spa.c2
-rw-r--r--module/zfs/spa_misc.c2
2 files changed, 2 insertions, 2 deletions
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));
}