2011-05-04 79 views

回答

3

几个星期前,我在阅读Linux Device Drivers, Third Edition中该函数的说明后遇到了同样令人困惑的问题。然而,在阅读当前内核源代码树中的各种等待函数的注释后,我发现自该书发布以来API已经发生了变化。较新的内核(至少2.6.34+,可能比这更远),将剩余的jiffies数返回到超时值而不是错误代码。因此,返回值为零表示发生超时,并且任何非零值应表示通过事件条件成功唤醒。 include/linux/wait.h中的评论提供了对新API的很好的描述。