|
|
@@ -1689,8 +1689,6 @@ static blk_qc_t blk_queue_bio(struct request_queue *q, struct bio *bio)
|
|
|
struct request *req;
|
|
|
unsigned int request_count = 0;
|
|
|
|
|
|
- blk_queue_split(q, &bio, q->bio_split);
|
|
|
-
|
|
|
/*
|
|
|
* low level driver can indicate that it wants pages above a
|
|
|
* certain limit bounced to low memory (ie for highmem, or even
|
|
|
@@ -1698,6 +1696,8 @@ static blk_qc_t blk_queue_bio(struct request_queue *q, struct bio *bio)
|
|
|
*/
|
|
|
blk_queue_bounce(q, &bio);
|
|
|
|
|
|
+ blk_queue_split(q, &bio, q->bio_split);
|
|
|
+
|
|
|
if (bio_integrity_enabled(bio) && bio_integrity_prep(bio)) {
|
|
|
bio->bi_error = -EIO;
|
|
|
bio_endio(bio);
|