blk-merge.c (bdced438acd83ad83a6c6fc7f50099b820245ddb) | blk-merge.c (6ac45aeb6bcad38a2783a7d6e5da4c469497eeb0) |
---|---|
1/* 2 * Functions related to segment and merge handling 3 */ 4#include <linux/kernel.h> 5#include <linux/module.h> 6#include <linux/bio.h> 7#include <linux/blkdev.h> 8#include <linux/scatterlist.h> --- 125 unchanged lines hidden (view full) --- 134 split = blk_bio_segment_split(q, *bio, q->bio_split, &nsegs); 135 136 /* physical segments can be figured out during splitting */ 137 res = split ? split : *bio; 138 res->bi_phys_segments = nsegs; 139 bio_set_flag(res, BIO_SEG_VALID); 140 141 if (split) { | 1/* 2 * Functions related to segment and merge handling 3 */ 4#include <linux/kernel.h> 5#include <linux/module.h> 6#include <linux/bio.h> 7#include <linux/blkdev.h> 8#include <linux/scatterlist.h> --- 125 unchanged lines hidden (view full) --- 134 split = blk_bio_segment_split(q, *bio, q->bio_split, &nsegs); 135 136 /* physical segments can be figured out during splitting */ 137 res = split ? split : *bio; 138 res->bi_phys_segments = nsegs; 139 bio_set_flag(res, BIO_SEG_VALID); 140 141 if (split) { |
142 /* there isn't chance to merge the splitted bio */ 143 split->bi_rw |= REQ_NOMERGE; 144 |
|
142 bio_chain(split, *bio); 143 generic_make_request(*bio); 144 *bio = split; 145 } 146} 147EXPORT_SYMBOL(blk_queue_split); 148 149static unsigned int __blk_recalc_rq_segments(struct request_queue *q, --- 583 unchanged lines hidden --- | 145 bio_chain(split, *bio); 146 generic_make_request(*bio); 147 *bio = split; 148 } 149} 150EXPORT_SYMBOL(blk_queue_split); 151 152static unsigned int __blk_recalc_rq_segments(struct request_queue *q, --- 583 unchanged lines hidden --- |