summaryrefslogtreecommitdiffstats
path: root/drivers/scsi/storvsc_drv.c
diff options
context:
space:
mode:
authorChristoph Hellwig <hch@lst.de>2019-06-17 14:19:56 +0200
committerMartin K. Petersen <martin.petersen@oracle.com>2019-07-17 05:02:10 +0200
commit83eed4592f19a04004c80e6f256236264db95dd8 (patch)
tree6dafe2f1b1de1ce47b78e1db8962c2446dc449fa /drivers/scsi/storvsc_drv.c
parentscsi: ufshcd: set max_segment_size in the scsi host template (diff)
downloadlinux-83eed4592f19a04004c80e6f256236264db95dd8.tar.xz
linux-83eed4592f19a04004c80e6f256236264db95dd8.zip
scsi: storvsc: set virt_boundary_mask in the scsi host template
This ensures all proper DMA layer handling is taken care of by the SCSI midlayer. Signed-off-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Bart Van Assche <bvanassche@acm.org> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Diffstat (limited to 'drivers/scsi/storvsc_drv.c')
-rw-r--r--drivers/scsi/storvsc_drv.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/drivers/scsi/storvsc_drv.c b/drivers/scsi/storvsc_drv.c
index 5b6c0f88da59..559fc63e9f1c 100644
--- a/drivers/scsi/storvsc_drv.c
+++ b/drivers/scsi/storvsc_drv.c
@@ -1435,9 +1435,6 @@ static int storvsc_device_configure(struct scsi_device *sdevice)
{
blk_queue_rq_timeout(sdevice->request_queue, (storvsc_timeout * HZ));
- /* Ensure there are no gaps in presented sgls */
- blk_queue_virt_boundary(sdevice->request_queue, PAGE_SIZE - 1);
-
sdevice->no_write_same = 1;
/*
@@ -1710,6 +1707,8 @@ static struct scsi_host_template scsi_driver = {
.this_id = -1,
/* Make sure we dont get a sg segment crosses a page boundary */
.dma_boundary = PAGE_SIZE-1,
+ /* Ensure there are no gaps in presented sgls */
+ .virt_boundary_mask = PAGE_SIZE-1,
.no_write_same = 1,
.track_queue_depth = 1,
.change_queue_depth = storvsc_change_queue_depth,