我有一个内核模块,我在其中处理USB设备。
我可以成功地向设备发送USB批量消息,但该操作是在二进制属性的回调下进行的。
但是,当发生某些事情时,我需要执行特定的操作。当发生这种情况时,我需要向设备发送批量消息。发生的地方是自己的设备数据收入回调。如果我在那个地方发送批量邮件,我就会遇到内核恐慌。
有人可以告诉我为什么吗?
如果这不适合进行此类操作,我可以在哪里安全地进行操作?如何在另一个地方发出操作信号?一个计时器?
请就此具体问题提出建议。
答案 0 :(得分:4)
我设法通过以下方法解决了我面临的问题:
我认为这种方法可以带来更好的设计,因为减少了在中断句柄中花费的时间。
我现在可以安静地调用usb_bulk_msg(...)
因为我不再处于中断环境中。这确实是问题所在。