WARNING: at kernel/irq/manage.c:274 0xa01aa01b()
Unbalanced enable for IRQ 10
Modules linked in:
Backtrace: no frame pointer
---[ end trace 5cce32c8b5df3d34 ]---
当我运行我的应用程序时,它会给出这个错误,这意味着什么,以及如何解决。。?请详细指导我。
最佳答案
检查内核源代码(kernel/irq/manage.c:274),我们可以看到这个警告打印是在enable_irq()
中触发的。当试图启用一个已经启用的IRQ时,也就是说,它没有首先被禁用。
如果您是由于运行某个用户空间程序而收到此警告的,则需要检查此用户空间程序与之交互的驱动程序的逻辑,并修复该驱动程序中不必要的启用IRQ 10
。
除了污染内核日志之外,忽略此警告非常安全,因为它不会影响即时功能。不过,它确实表明程序(或底层驱动程序)状态机逻辑中存在更深层的问题。
关于linux - i2c在用户空间访问问题,如何解决..?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17851793/