get_request — get a free request
struct request * get_request ( | struct request_queue * q, |
int rw_flags, | |
struct bio * bio, | |
gfp_t gfp_mask) ; |
q
request_queue to allocate request from
rw_flags
RW and SYNC flags
bio
bio to allocate request for (can be NULL
)
gfp_mask
allocation mask
Get a free request from q
. If __GFP_WAIT
is set in gfp_mask
, this
function keeps retrying under memory pressure and fails iff q
is dead.
Must be called with q
->queue_lock held and,
Returns ERR_PTR on failure, with q
->queue_lock held.
Returns request pointer on success, with q
->queue_lock *not held*.