Provided by: linux-doc-2.6.15_2.6.15-23.39_all
void generic_make_request (struct bio * bio);
bio The bio describing the location in memory and on the device.
generic_make_request is used to make I/O requests of block devices. It
is passed a &struct bio, which describes the I/O that needs to be done.
generic_make_request does not return any status. The success/failure
status of the request, along with notification of completion, is
delivered asynchronously through the bio->bi_end_io function described
(one day) else where.
The caller of generic_make_request must make sure that bi_io_vec are
set to describe the memory buffer, and that bi_dev and bi_sector are
set to describe the device address, and the bi_end_io and optionally
bi_private are set to describe how completion notification should be
generic_make_request and the drivers it calls may use bi_next if this
bio happens to be merged with someone else, and may change bi_dev and
bi_sector for remaps as it sees fit. So the values of these fields
should NOT be depended on after the call to generic_make_request.