On Sun, Apr 22, 2007 at 02:23:00PM +0100, David Woodhouse wrote: > On Sun, 2007-04-22 at 13:24 +0100, Christoph Hellwig wrote: > > This is the full conversion I sent to Dave in April 2006, but never > > got any feedback to: > > Sorry about that; I need prodding sometimes. I'll provide some now... > > Can you show me why the thread won't now miss a wakeup if it goes to > sleep just as a new request is added to its queue?
Exactly the same thing that happened before. If you look at wake_up_process it's just a tiny wrapper around try_to_wake_up. And wake_up expands to __wake_up expaneds to __wake_up_common which just walks the list of threads attached to the waitqueue and then calls curr->func, which expands to try_to_wake_up. So when your thread still is in running state nothing changes. If your thread is not in running state it'll get woken by both variants. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/