Loading block/blk-merge.c +10 −11 Original line number Diff line number Diff line Loading @@ -283,20 +283,20 @@ static struct bio *blk_bio_segment_split(struct request_queue *q, /** * __blk_queue_split - split a bio and submit the second half * @q: [in] request queue pointer * @bio: [in, out] bio to be split * @nr_segs: [out] number of segments in the first bio * * Split a bio into two bios, chain the two bios, submit the second half and * store a pointer to the first half in *@bio. If the second bio is still too * big it will be split by a recursive call to this function. Since this * function may allocate a new bio from @q->bio_split, it is the responsibility * of the caller to ensure that @q is only released after processing of the * function may allocate a new bio from @bio->bi_disk->queue->bio_split, it is * the responsibility of the caller to ensure that * @bio->bi_disk->queue->bio_split is only released after processing of the * split bio has finished. */ void __blk_queue_split(struct request_queue *q, struct bio **bio, unsigned int *nr_segs) void __blk_queue_split(struct bio **bio, unsigned int *nr_segs) { struct request_queue *q = (*bio)->bi_disk->queue; struct bio *split = NULL; switch (bio_op(*bio)) { Loading Loading @@ -345,20 +345,19 @@ void __blk_queue_split(struct request_queue *q, struct bio **bio, /** * blk_queue_split - split a bio and submit the second half * @q: [in] request queue pointer * @bio: [in, out] bio to be split * * Split a bio into two bios, chains the two bios, submit the second half and * store a pointer to the first half in *@bio. Since this function may allocate * a new bio from @q->bio_split, it is the responsibility of the caller to * ensure that @q is only released after processing of the split bio has * finished. * a new bio from @bio->bi_disk->queue->bio_split, it is the responsibility of * the caller to ensure that @bio->bi_disk->queue->bio_split is only released * after processing of the split bio has finished. */ void blk_queue_split(struct request_queue *q, struct bio **bio) void blk_queue_split(struct bio **bio) { unsigned int nr_segs; __blk_queue_split(q, bio, &nr_segs); __blk_queue_split(bio, &nr_segs); } EXPORT_SYMBOL(blk_queue_split); Loading block/blk-mq.c +1 −1 Original line number Diff line number Diff line Loading @@ -2166,7 +2166,7 @@ blk_qc_t blk_mq_make_request(struct request_queue *q, struct bio *bio) blk_status_t ret; blk_queue_bounce(q, &bio); __blk_queue_split(q, &bio, &nr_segs); __blk_queue_split(&bio, &nr_segs); if (!bio_integrity_prep(bio)) goto queue_exit; Loading block/blk.h +1 −2 Original line number Diff line number Diff line Loading @@ -220,8 +220,7 @@ ssize_t part_timeout_show(struct device *, struct device_attribute *, char *); ssize_t part_timeout_store(struct device *, struct device_attribute *, const char *, size_t); void __blk_queue_split(struct request_queue *q, struct bio **bio, unsigned int *nr_segs); void __blk_queue_split(struct bio **bio, unsigned int *nr_segs); int ll_back_merge_fn(struct request *req, struct bio *bio, unsigned int nr_segs); int ll_front_merge_fn(struct request *req, struct bio *bio, Loading drivers/block/drbd/drbd_req.c +1 −1 Original line number Diff line number Diff line Loading @@ -1598,7 +1598,7 @@ blk_qc_t drbd_make_request(struct request_queue *q, struct bio *bio) struct drbd_device *device = bio->bi_disk->private_data; unsigned long start_jif; blk_queue_split(q, &bio); blk_queue_split(&bio); start_jif = jiffies; Loading drivers/block/pktcdvd.c +1 −1 Original line number Diff line number Diff line Loading @@ -2434,7 +2434,7 @@ static blk_qc_t pkt_make_request(struct request_queue *q, struct bio *bio) char b[BDEVNAME_SIZE]; struct bio *split; blk_queue_split(q, &bio); blk_queue_split(&bio); pd = q->queuedata; if (!pd) { Loading Loading
block/blk-merge.c +10 −11 Original line number Diff line number Diff line Loading @@ -283,20 +283,20 @@ static struct bio *blk_bio_segment_split(struct request_queue *q, /** * __blk_queue_split - split a bio and submit the second half * @q: [in] request queue pointer * @bio: [in, out] bio to be split * @nr_segs: [out] number of segments in the first bio * * Split a bio into two bios, chain the two bios, submit the second half and * store a pointer to the first half in *@bio. If the second bio is still too * big it will be split by a recursive call to this function. Since this * function may allocate a new bio from @q->bio_split, it is the responsibility * of the caller to ensure that @q is only released after processing of the * function may allocate a new bio from @bio->bi_disk->queue->bio_split, it is * the responsibility of the caller to ensure that * @bio->bi_disk->queue->bio_split is only released after processing of the * split bio has finished. */ void __blk_queue_split(struct request_queue *q, struct bio **bio, unsigned int *nr_segs) void __blk_queue_split(struct bio **bio, unsigned int *nr_segs) { struct request_queue *q = (*bio)->bi_disk->queue; struct bio *split = NULL; switch (bio_op(*bio)) { Loading Loading @@ -345,20 +345,19 @@ void __blk_queue_split(struct request_queue *q, struct bio **bio, /** * blk_queue_split - split a bio and submit the second half * @q: [in] request queue pointer * @bio: [in, out] bio to be split * * Split a bio into two bios, chains the two bios, submit the second half and * store a pointer to the first half in *@bio. Since this function may allocate * a new bio from @q->bio_split, it is the responsibility of the caller to * ensure that @q is only released after processing of the split bio has * finished. * a new bio from @bio->bi_disk->queue->bio_split, it is the responsibility of * the caller to ensure that @bio->bi_disk->queue->bio_split is only released * after processing of the split bio has finished. */ void blk_queue_split(struct request_queue *q, struct bio **bio) void blk_queue_split(struct bio **bio) { unsigned int nr_segs; __blk_queue_split(q, bio, &nr_segs); __blk_queue_split(bio, &nr_segs); } EXPORT_SYMBOL(blk_queue_split); Loading
block/blk-mq.c +1 −1 Original line number Diff line number Diff line Loading @@ -2166,7 +2166,7 @@ blk_qc_t blk_mq_make_request(struct request_queue *q, struct bio *bio) blk_status_t ret; blk_queue_bounce(q, &bio); __blk_queue_split(q, &bio, &nr_segs); __blk_queue_split(&bio, &nr_segs); if (!bio_integrity_prep(bio)) goto queue_exit; Loading
block/blk.h +1 −2 Original line number Diff line number Diff line Loading @@ -220,8 +220,7 @@ ssize_t part_timeout_show(struct device *, struct device_attribute *, char *); ssize_t part_timeout_store(struct device *, struct device_attribute *, const char *, size_t); void __blk_queue_split(struct request_queue *q, struct bio **bio, unsigned int *nr_segs); void __blk_queue_split(struct bio **bio, unsigned int *nr_segs); int ll_back_merge_fn(struct request *req, struct bio *bio, unsigned int nr_segs); int ll_front_merge_fn(struct request *req, struct bio *bio, Loading
drivers/block/drbd/drbd_req.c +1 −1 Original line number Diff line number Diff line Loading @@ -1598,7 +1598,7 @@ blk_qc_t drbd_make_request(struct request_queue *q, struct bio *bio) struct drbd_device *device = bio->bi_disk->private_data; unsigned long start_jif; blk_queue_split(q, &bio); blk_queue_split(&bio); start_jif = jiffies; Loading
drivers/block/pktcdvd.c +1 −1 Original line number Diff line number Diff line Loading @@ -2434,7 +2434,7 @@ static blk_qc_t pkt_make_request(struct request_queue *q, struct bio *bio) char b[BDEVNAME_SIZE]; struct bio *split; blk_queue_split(q, &bio); blk_queue_split(&bio); pd = q->queuedata; if (!pd) { Loading