This is a note to let you know that I've just added the patch titled nvme-pci: set min_align_mask to the 5.10-stable tree which can be found at: http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary The filename of the patch is: nvme-pci-set-min_align_mask.patch and it can be found in the queue-5.10 subdirectory. If you, or anyone else, feels it should not be added to the stable tree, please let <stable@xxxxxxxxxxxxxxx> know about it. >From foo@baz Wed May 5 09:27:45 AM CEST 2021 From: Jianxiong Gao <jxgao@xxxxxxxxxx> Date: Thu, 29 Apr 2021 17:33:15 +0000 Subject: nvme-pci: set min_align_mask To: stable@xxxxxxxxxxxxxxx, hch@xxxxxx, marcorr@xxxxxxxxxx, sashal@xxxxxxxxxx Cc: Jianxiong Gao <jxgao@xxxxxxxxxx>, Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx> Message-ID: <20210429173315.1252465-10-jxgao@xxxxxxxxxx> From: Jianxiong Gao <jxgao@xxxxxxxxxx> commit: 3d2d861eb03e8ee96dc430a54361c900cbe28afd The PRP addressing scheme requires all PRP entries except for the first one to have a zero offset into the NVMe controller pages (which can be different from the Linux PAGE_SIZE). Use the min_align_mask device parameter to ensure that swiotlb does not change the address of the buffer modulo the device page size to ensure that the PRPs won't be malformed. Signed-off-by: Jianxiong Gao <jxgao@xxxxxxxxxx> Signed-off-by: Christoph Hellwig <hch@xxxxxx> Tested-by: Jianxiong Gao <jxgao@xxxxxxxxxx> Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx> Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> --- drivers/nvme/host/pci.c | 1 + 1 file changed, 1 insertion(+) --- a/drivers/nvme/host/pci.c +++ b/drivers/nvme/host/pci.c @@ -2634,6 +2634,7 @@ static void nvme_reset_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); Patches currently in stable-queue which might be from jxgao@xxxxxxxxxx are queue-5.10/swiotlb-respect-min_align_mask.patch queue-5.10/swiotlb-factor-out-a-nr_slots-helper.patch queue-5.10/swiotlb-add-a-io_tlb_size-define.patch queue-5.10/swiotlb-clean-up-swiotlb_tbl_unmap_single.patch queue-5.10/swiotlb-factor-out-an-io_tlb_offset-helper.patch queue-5.10/swiotlb-don-t-modify-orig_addr-in-swiotlb_tbl_sync_single.patch queue-5.10/swiotlb-refactor-swiotlb_tbl_map_single.patch queue-5.10/driver-core-add-a-min_align_mask-field-to-struct-device_dma_parameters.patch queue-5.10/nvme-pci-set-min_align_mask.patch