提交 bdc370d6 编写于 作者: Y Yipeng Zou 提交者: Yongqiang Liu

genirq: Introduce warn log when irq be reentrant

hulk inclusion
category: feature
bugzilla: https://gitee.com/openeuler/kernel/issues/I6BO2R
CVE: NA

--------------------------------

Now we has nothing to show the log when the irq be reentrant in
multiple cpus.

The IRQD_IRQ_INPROGRESS means that the irq was in processing.

We can add an checkpoint here to indentifly this scenario.
Signed-off-by: NYipeng Zou <zouyipeng@huawei.com>
Reviewed-by: NZhang Jianhua <chris.zjh@huawei.com>
Signed-off-by: NYongqiang Liu <liuyongqiang13@huawei.com>
上级 9b7fffe9
......@@ -513,6 +513,10 @@ static bool irq_may_run(struct irq_desc *desc)
if (!irqd_has_set(&desc->irq_data, mask))
return true;
if (irqd_get(&desc->irq_data) & IRQD_IRQ_INPROGRESS)
pr_warn_ratelimited("irq %u(%lu) may be reentrant in multiple cpus.\n",
desc->irq_data.irq, desc->irq_data.hwirq);
/*
* If the interrupt is an armed wakeup source, mark it pending
* and suspended, disable it and notify the pm core about the
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册