- struct request * get_request_wait(struct request_queue * q, int rw_flags, struct bio * bio);
- request_queue to allocate request from
- RW and SYNC flags
- bio to allocate request for (can be NULL)
Get a free request from q. This function keeps retrying under memory pressure and fails iff q is dead.
Must be callled with q->queue_lock held and, Returns NULL on failure, with q->queue_lock held. Returns !NULL on success, with q->queue_lock *not held*.