block: add bounce support to blk_rq_map_user_iov
blk_rq_map_user_iov can't handle the bounce buffer (it means that the bio_map_user_iov path doesn't work with a LLD that needs GFP_DMA). This patch fixes blk_rq_map_user_iov to support the bounce buffer. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> Cc: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
This commit is contained in:
parent
c265a7f417
commit
07359fc61b
1 changed files with 1 additions and 0 deletions
|
@ -210,6 +210,7 @@ int blk_rq_map_user_iov(struct request_queue *q, struct request *rq,
|
||||||
if (!bio_flagged(bio, BIO_USER_MAPPED))
|
if (!bio_flagged(bio, BIO_USER_MAPPED))
|
||||||
rq->cmd_flags |= REQ_COPY_USER;
|
rq->cmd_flags |= REQ_COPY_USER;
|
||||||
|
|
||||||
|
blk_queue_bounce(q, &bio);
|
||||||
bio_get(bio);
|
bio_get(bio);
|
||||||
blk_rq_bio_prep(q, rq, bio);
|
blk_rq_bio_prep(q, rq, bio);
|
||||||
rq->buffer = rq->data = NULL;
|
rq->buffer = rq->data = NULL;
|
||||||
|
|
Loading…
Reference in a new issue