Note: "permalinks" may not be as permanent as we would like,
direct links of old sources may well be a few messages off.
This needs the patch below for the blk-mq case with multiple queues. Also I wonder why we really want to push this below ->make_request. Moving it just outside ->make_request would make the callchain more obvious and avoid the recursion into the driver. diff --git a/block/blk-mq.c b/block/blk-mq.c index e9bbc04..e7fae76 100644 --- a/block/blk-mq.c +++ b/block/blk-mq.c @@ -1256,6 +1256,8 @@ static void blk_mq_make_request(struct request_queue *q, struct bio *bio) return; } + blk_queue_split(q, &bio, q->bio_split); + rq = blk_mq_map_request(q, bio, &data); if (unlikely(!rq)) return;