[PATCH] Revert "nvme-pci: clamp max_hw_sectors based on DMA optimized limitation"
John Garry
john.garry at linux.dev
Thu Oct 8 00:36:54 PDT 2026
On 10/6/26 13:02, Christoph Hellwig wrote:
> This turns down to cause up to 15% performance regressions on standard
> large transfer workloads. Revert it and hope the IOVA allocator can
> eventually be fixed to remove the need for the original workaround.
>
> This reverts commit 3710e2b056cb92ad816e4d79fa54a6a5b6ad8cbd.
>
What was the block size and conditions for the original issue? The
commit just mentions that mdts=10 and we get a 4096KB max HW sectors.
I can't find the original thread.
> Signed-off-by: Christoph Hellwig <hch at lst.de>
> ---
> drivers/nvme/host/pci.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/nvme/host/pci.c b/drivers/nvme/host/pci.c
> index 5440cf18b55b..82e308fe4f4c 100644
> --- a/drivers/nvme/host/pci.c
> +++ b/drivers/nvme/host/pci.c
> @@ -3747,7 +3747,7 @@ static struct nvme_dev *nvme_pci_alloc_dev(struct pci_dev *pdev,
> */
> dev->ctrl.max_hw_sectors = min_t(u32,
> NVME_MAX_BYTES >> SECTOR_SHIFT,
> - dma_opt_mapping_size(&pdev->dev) >> 9);
> + dma_max_mapping_size(&pdev->dev) >> 9);
> dev->ctrl.max_segments = NVME_MAX_SEGS;
> dev->ctrl.max_integrity_segments = 1;
> return dev;
More information about the Linux-nvme
mailing list