|
@@ -1262,12 +1262,9 @@ static blk_qc_t blk_mq_make_request(struct request_queue *q, struct bio *bio)
|
|
|
|
|
|
blk_queue_split(q, &bio, q->bio_split);
|
|
|
|
|
|
- if (!is_flush_fua && !blk_queue_nomerges(q)) {
|
|
|
- if (blk_attempt_plug_merge(q, bio, &request_count,
|
|
|
- &same_queue_rq))
|
|
|
- return BLK_QC_T_NONE;
|
|
|
- } else
|
|
|
- request_count = blk_plug_queued_count(q);
|
|
|
+ if (!is_flush_fua && !blk_queue_nomerges(q) &&
|
|
|
+ blk_attempt_plug_merge(q, bio, &request_count, &same_queue_rq))
|
|
|
+ return BLK_QC_T_NONE;
|
|
|
|
|
|
rq = blk_mq_map_request(q, bio, &data);
|
|
|
if (unlikely(!rq))
|
|
@@ -1358,9 +1355,11 @@ static blk_qc_t blk_sq_make_request(struct request_queue *q, struct bio *bio)
|
|
|
|
|
|
blk_queue_split(q, &bio, q->bio_split);
|
|
|
|
|
|
- if (!is_flush_fua && !blk_queue_nomerges(q) &&
|
|
|
- blk_attempt_plug_merge(q, bio, &request_count, NULL))
|
|
|
- return BLK_QC_T_NONE;
|
|
|
+ if (!is_flush_fua && !blk_queue_nomerges(q)) {
|
|
|
+ if (blk_attempt_plug_merge(q, bio, &request_count, NULL))
|
|
|
+ return BLK_QC_T_NONE;
|
|
|
+ } else
|
|
|
+ request_count = blk_plug_queued_count(q);
|
|
|
|
|
|
rq = blk_mq_map_request(q, bio, &data);
|
|
|
if (unlikely(!rq))
|