标签: linux-kernel interrupt
在Linux内核中,我需要通过调用mdiobus_read()(drivers / net / phy / mdio_bus.c)来定期检查交换芯片的状态。
mdiobus_read()
我尝试使用Linux计时器add_timer(),但是我发现回调是在中断上下文中调用的。实际上,函数mdiobus_read()的注释中有一个警告:
add_timer()
注意:绝不能从中断上下文中调用, 因为总线的读/写功能可能会等待中断 结束操作。
那么,如何定期调用函数mdiobus_read()?