Drivers allocating their own buf structures with getrbuf(9F)
can use the biowait() function to suspend the current thread and wait for completion of the transfer.
Drivers must call biodone(9F) when the transfer is complete to notify the thread
blocked by biowait(). biodone() is usually called in the interrupt routine.