diff options
author | Keith Busch <keith.busch@intel.com> | 2015-08-19 14:24:05 -0700 |
---|---|---|
committer | Jens Axboe <axboe@fb.com> | 2015-08-19 14:26:02 -0700 |
commit | 03100aada96f0645bbcb89aea24c01f02d0ef1fa (patch) | |
tree | ba909d035a188206b101ae633f925e18d749f7cc /include/linux/bio.h | |
parent | d2be537c3ba3568acd79cd178327b842e60d035e (diff) | |
download | talos-obmc-linux-03100aada96f0645bbcb89aea24c01f02d0ef1fa.tar.gz talos-obmc-linux-03100aada96f0645bbcb89aea24c01f02d0ef1fa.zip |
block: Replace SG_GAPS with new queue limits mask
The SG_GAPS queue flag caused checks for bio vector alignment against
PAGE_SIZE, but the device may have different constraints. This patch
adds a queue limits so a driver with such constraints can set to allow
requests that would have been unnecessarily split. The new gaps check
takes the request_queue as a parameter to simplify the logic around
invoking this function.
This new limit makes the queue flag redundant, so removing it and
all usage. Device-mappers will inherit the correct settings through
blk_stack_limits().
Signed-off-by: Keith Busch <keith.busch@intel.com>
Reviewed-by: Martin K. Petersen <martin.petersen@oracle.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jens Axboe <axboe@fb.com>
Diffstat (limited to 'include/linux/bio.h')
-rw-r--r-- | include/linux/bio.h | 9 |
1 files changed, 0 insertions, 9 deletions
diff --git a/include/linux/bio.h b/include/linux/bio.h index ad7217458812..b9b6e046b52e 100644 --- a/include/linux/bio.h +++ b/include/linux/bio.h @@ -187,15 +187,6 @@ static inline void *bio_data(struct bio *bio) __BIO_SEG_BOUNDARY(bvec_to_phys((b1)), bvec_to_phys((b2)) + (b2)->bv_len, queue_segment_boundary((q))) /* - * Check if adding a bio_vec after bprv with offset would create a gap in - * the SG list. Most drivers don't care about this, but some do. - */ -static inline bool bvec_gap_to_prev(struct bio_vec *bprv, unsigned int offset) -{ - return offset || ((bprv->bv_offset + bprv->bv_len) & (PAGE_SIZE - 1)); -} - -/* * drivers should _never_ use the all version - the bio may have been split * before it got to the driver and the driver won't own all of it */ |