"noirq suspend" 在 linux 内核中

"noirq suspend" in the linux kernel

在 linux 内核的上下文中,noirq suspend 是什么意思?我在 dmesg 的输出中看到了这个日志:

PM: noirq suspend of devices failed

有什么想法吗?

感谢@0andriy 的评论,我在 linux 内核源代码中找到了对它的描述(include/linux/pm.h) :

@suspend_noirq: Complete the actions started by @suspend(). Carry out any additional operations required for suspending the device that might be racing with its driver's interrupt handler, which is guaranteed not to run while @suspend_noirq() is being executed. It generally is expected that the device will be in a low-power state (appropriate for the target system sleep state) after subsystem-level @suspend_noirq() has returned successfully. If the device can generate system wakeup signals and is enabled to wake up the system, it should be configured to do so at that time. However, depending on the platform and device's subsystem, @suspend() or @suspend_late() may be allowed to put the device into the low-power state and configure it to generate wakeup signals, in which case it generally is not necessary to define @suspend_noirq().