diff options
author | James Bottomley <James.Bottomley@HansenPartnership.com> | 2007-12-31 17:37:00 -0500 |
---|---|---|
committer | James Bottomley <James.Bottomley@HansenPartnership.com> | 2008-01-11 19:29:20 -0500 |
commit | 11c3e689f1c3a73e3af7b0ea767b1b0626da8033 (patch) | |
tree | 0f1d109897b13c9d0f86a3ba5af088596f728cdb /include/linux | |
parent | 166a72878f76e911f2d1ce4b2310d4403e94be11 (diff) |
[SCSI] block: Introduce new blk_queue_update_dma_alignment interface
The purpose of this is to allow stacked alignment settings, with the
ultimate queue alignment being set to the largest alignment requirement
in the stack.
The reason for this is so that the SCSI mid-layer can relax the default
alignment requirements (which are basically causing a lot of superfluous
copying to go on in the SG_IO interface) while allowing transports,
devices or HBAs to add stricter limits if they need them.
Acked-by: Jens Axboe <jens.axboe@oracle.com>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/blkdev.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h index d18ee67b40f8..81e99e516302 100644 --- a/include/linux/blkdev.h +++ b/include/linux/blkdev.h | |||
@@ -766,6 +766,7 @@ extern void blk_queue_segment_boundary(struct request_queue *, unsigned long); | |||
766 | extern void blk_queue_prep_rq(struct request_queue *, prep_rq_fn *pfn); | 766 | extern void blk_queue_prep_rq(struct request_queue *, prep_rq_fn *pfn); |
767 | extern void blk_queue_merge_bvec(struct request_queue *, merge_bvec_fn *); | 767 | extern void blk_queue_merge_bvec(struct request_queue *, merge_bvec_fn *); |
768 | extern void blk_queue_dma_alignment(struct request_queue *, int); | 768 | extern void blk_queue_dma_alignment(struct request_queue *, int); |
769 | extern void blk_queue_update_dma_alignment(struct request_queue *, int); | ||
769 | extern void blk_queue_softirq_done(struct request_queue *, softirq_done_fn *); | 770 | extern void blk_queue_softirq_done(struct request_queue *, softirq_done_fn *); |
770 | extern struct backing_dev_info *blk_get_backing_dev_info(struct block_device *bdev); | 771 | extern struct backing_dev_info *blk_get_backing_dev_info(struct block_device *bdev); |
771 | extern int blk_queue_ordered(struct request_queue *, unsigned, prepare_flush_fn *); | 772 | extern int blk_queue_ordered(struct request_queue *, unsigned, prepare_flush_fn *); |