nvme-pci: set min_align_mask before calculating max_hw_sectors
PATCH 1/1 nvme-pci: set min_align_mask before calculating max_hw_sectors
commit 61ce339f19fabbc3e51237148a7ef6f2270e44fa upstream.
If swiotlb is force enabled dma_max_mapping_size ends up calling swiotlb_max_mapping_size which takes into account the min align mask for the device. Set the min align mask for nvme driver before calling dma_max_mapping_size while calculating max hw sectors.
Signed-off-by Rishabh Bhatnagar <[email protected]>
Signed-off-by Christoph Hellwig <[email protected]>
--- drivers/nvme/host/pci.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
drivers/nvme/host/pci.c +2 -1
@@ -2732,6 +2732,8 @@ static void nvme_reset_work(struct work_struct *work)if (result) goto out_unlock; +dma_set_min_align_mask (dev->dev,NVME_CTRL_PAGE_SIZE -1 ); +/* * Limit the max command size to prevent iod->sg allocations going * over a single page.
@@ -2744,7 +2746,6 @@ static void nvme_reset_work(struct work_struct *work)* Don't limit the IOMMU merged segment size. */ dma_set_max_seg_size (dev->dev,0xffffffff ); -dma_set_min_align_mask (dev->dev,NVME_CTRL_PAGE_SIZE -1 );mutex_unlock (&dev->shutdown_lock);
Signature · 1 line
2.37.1
Greg KH
maintainerQuoted 7 lines · Rishabh Bhatnagar
commit
61ce339f19fabbc3e51237148a7ef6f2270e44faupstream.If swiotlb is force enabled
dma_max_mapping_sizeends up callingswiotlb_max_mapping_sizewhich takes into account the min align mask for the device. Set the min align mask for nvme driver before callingdma_max_mapping_sizewhile calculating max hw sectors.
Quoted 5 lines
Signed-off-by Rishabh Bhatnagar <[email protected]>Signed-off-by Christoph Hellwig <[email protected]>--- drivers/nvme/host/pci.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
Now queued up, thanks.
greg k-h