diff --git a/block/blk-mq.c b/block/blk-mq.c index 9180052d42cc13ed476471350e2f7934b8b2f006..1fa01ff0f9bce11a4bc24001e0bdcd14016c3ac0 100644 --- a/block/blk-mq.c +++ b/block/blk-mq.c @@ -534,7 +534,7 @@ static void __blk_mq_run_hw_queue(struct blk_mq_hw_ctx *hctx) LIST_HEAD(rq_list); int bit, queued; - WARN_ON(!preempt_count()); + WARN_ON(!cpumask_test_cpu(raw_smp_processor_id(), hctx->cpumask)); if (unlikely(test_bit(BLK_MQ_S_STOPPED, &hctx->state))) return;