【发布时间】:2009-12-02 10:31:28
【问题描述】:
在某些 PCI 硬件的设备驱动程序中,我有一个 ioctl 调用,它等待 PCI 总线上的传入中断。使用wait_queue_head_t,我通过调用schedule() 使任务进入休眠状态。
然后,irq_handler 函数会在 PCI 总线上产生中断时唤醒此任务。一切似乎都正常。
我的问题是如何区分schedule() 调用返回是因为我的irq_handler 函数唤醒它,还是因为某些信号已发送?
我必须自己在irq_handler函数中使用标志来处理它吗?
【问题讨论】:
标签: linux linux-kernel scheduling signals linux-device-driver