I have a queue where processes queue up I/O. Driver must pick any one I/O request from the queue(based on some criteria), do the I/O and then wake up corresponding process. Problem: How to selectively wake up a particular process from the middle of the Wait Queue? Instead, can I use __wait_on_bit() for this scenario? TIA, Indro