[DRBD-user] [PATCH v3 01/11] block: make generic_make_request handle arbitrarily sized bios

Christoph Hellwig hch at lst.de
Wed May 20 14:44:18 CEST 2015

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;



More information about the drbd-user mailing list