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
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.
Fixes 7637de311bd2 ("nvme-pci: limit max_hw_sectors based on the DMA max
mapping size")
Signed-off-by Rishabh Bhatnagar <[email protected]>
--- drivers/nvme/host/pci.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
drivers/nvme/host/pci.c +2 -1
@@ -2834,6 +2834,8 @@ static void nvme_reset_work(struct work_struct *work)nvme_start_admin_queue (&dev->ctrl); } +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.
@@ -2846,7 +2848,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