When doing cpu online/offlile, sometimes this warning will be triggered,
it's harmless, io will be dispatched. But sometimes it warns too much and
even stall the whole system, so ratelimit it.
Signed-off-by: Junxiao Bi <junxiao.bi@xxxxxxxxxx>
---
block/blk-mq.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/block/blk-mq.c b/block/blk-mq.c
index ec791156e9cc..846f5d26c523 100644
--- a/block/blk-mq.c
+++ b/block/blk-mq.c
@@ -1384,7 +1384,7 @@ static void __blk_mq_run_hw_queue(struct blk_mq_hw_ctx *hctx)
* handle dispatched requests to this hctx
*/
if (!cpumask_test_cpu(raw_smp_processor_id(), hctx->cpumask) &&
- cpu_online(hctx->next_cpu)) {
+ cpu_online(hctx->next_cpu) && printk_ratelimit()) {
printk(KERN_WARNING "run queue from wrong CPU %d, hctx %s\n",
raw_smp_processor_id(),
cpumask_empty(hctx->cpumask) ? "inactive": "active");