* [PATCH v2] nvme-pci: Set min align mask before calculating max_hw_sectors @ 2022-09-29 18:22 Rishabh Bhatnagar [not found] ` <EB43F4D1-BFD0-408B-93E7-10643B59F766@amazon.com> 0 siblings, 1 reply; 6+ messages in thread From: Rishabh Bhatnagar @ 2022-09-29 18:22 UTC (permalink / raw) To: linux-kernel, linux-nvme, stable Cc: hch, sagi, axboe, kbusch, mbacco, benh, sjpark, Rishabh Bhatnagar In cases where swiotlb is enabled dma_max_mapping_size takes into account the min align mask for the device. Right now the mask is set after the max hw sectors are calculated which might result in a request size that overflows the swiotlb buffer. 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") Cc: stable@vger.kernel.org Signed-off-by: Rishabh Bhatnagar <risbhat@amazon.com> --- Changes in V2: - Add Cc: <stable@vger.kernel.org> tag - Improve the commit text - Add patch version Changes in V1: - Add fixes tag drivers/nvme/host/pci.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/nvme/host/pci.c b/drivers/nvme/host/pci.c index 98864b853eef..30e71e41a0a2 100644 --- a/drivers/nvme/host/pci.c +++ b/drivers/nvme/host/pci.c @@ -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); -- 2.37.1 ^ permalink raw reply related [flat|nested] 6+ messages in thread
[parent not found: <EB43F4D1-BFD0-408B-93E7-10643B59F766@amazon.com>]
* Re: [PATCH v2] nvme-pci: Set min align mask before calculating max_hw_sectors [not found] ` <EB43F4D1-BFD0-408B-93E7-10643B59F766@amazon.com> @ 2022-10-10 17:55 ` Bhatnagar, Rishabh 2022-10-11 6:08 ` hch 0 siblings, 1 reply; 6+ messages in thread From: Bhatnagar, Rishabh @ 2022-10-10 17:55 UTC (permalink / raw) To: linux-kernel, linux-nvme, stable Cc: hch, sagi, axboe, kbusch, Bacco, Mike, Herrenschmidt, Benjamin, Park, SeongJae On 10/4/22 9:27 AM, Bhatnagar, Rishabh wrote: > On 9/29/22, 11:23 AM, "Rishabh Bhatnagar" <risbhat@amazon.com> wrote: > > In cases where swiotlb is enabled dma_max_mapping_size takes into > account the min align mask for the device. Right now the mask is > set after the max hw sectors are calculated which might result in > a request size that overflows the swiotlb buffer. > 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") > Cc: stable@vger.kernel.org > Signed-off-by: Rishabh Bhatnagar <risbhat@amazon.com> > --- > Changes in V2: > - Add Cc: <stable@vger.kernel.org> tag > - Improve the commit text > - Add patch version > > Changes in V1: > - Add fixes tag > > drivers/nvme/host/pci.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/drivers/nvme/host/pci.c b/drivers/nvme/host/pci.c > index 98864b853eef..30e71e41a0a2 100644 > --- a/drivers/nvme/host/pci.c > +++ b/drivers/nvme/host/pci.c > @@ -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); > > -- > 2.37.1 > > Hi. Any review on this patch would be much appreciated! Thanks Rishabh ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH v2] nvme-pci: Set min align mask before calculating max_hw_sectors 2022-10-10 17:55 ` Bhatnagar, Rishabh @ 2022-10-11 6:08 ` hch 2022-10-11 17:05 ` Bhatnagar, Rishabh 0 siblings, 1 reply; 6+ messages in thread From: hch @ 2022-10-11 6:08 UTC (permalink / raw) To: Bhatnagar, Rishabh Cc: linux-kernel, linux-nvme, stable, hch, sagi, axboe, kbusch, Bacco, Mike, Herrenschmidt, Benjamin, Park, SeongJae The patch already made it to Linux 6.0, so I'm not sure what we need to review again. ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH v2] nvme-pci: Set min align mask before calculating max_hw_sectors 2022-10-11 6:08 ` hch @ 2022-10-11 17:05 ` Bhatnagar, Rishabh 2022-10-11 18:24 ` Greg KH 0 siblings, 1 reply; 6+ messages in thread From: Bhatnagar, Rishabh @ 2022-10-11 17:05 UTC (permalink / raw) To: hch Cc: linux-kernel, linux-nvme, stable, sagi, axboe, kbusch, Bacco, Mike, Herrenschmidt, Benjamin, Park, SeongJae On 10/10/22 11:08 PM, hch@lst.de wrote: > CAUTION: This email originated from outside of the organization. Do not click links or open attachments unless you can confirm the sender and know the content is safe. > > > > The patch already made it to Linux 6.0, so I'm not sure what we need > to review again. Oh, I never got any email that this was being picked up so sent it again. Anyways thanks for taking it. We need this patch for 5.10/5.15 stable kernels as well. I can send backport patches to stable tree maintainers unless there is a way for you to mark it so that its automatically picked for stable trees. Thanks Rishabh ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH v2] nvme-pci: Set min align mask before calculating max_hw_sectors 2022-10-11 17:05 ` Bhatnagar, Rishabh @ 2022-10-11 18:24 ` Greg KH 2022-10-11 20:35 ` Bhatnagar, Rishabh 0 siblings, 1 reply; 6+ messages in thread From: Greg KH @ 2022-10-11 18:24 UTC (permalink / raw) To: Bhatnagar, Rishabh Cc: hch, linux-kernel, linux-nvme, stable, sagi, axboe, kbusch, Bacco, Mike, Herrenschmidt, Benjamin, Park, SeongJae On Tue, Oct 11, 2022 at 10:05:38AM -0700, Bhatnagar, Rishabh wrote: > > On 10/10/22 11:08 PM, hch@lst.de wrote: > > CAUTION: This email originated from outside of the organization. Do not click links or open attachments unless you can confirm the sender and know the content is safe. > > > > > > > > The patch already made it to Linux 6.0, so I'm not sure what we need > > to review again. > > Oh, I never got any email that this was being picked up so sent it again. > Anyways thanks for taking it. > We need this patch for 5.10/5.15 stable kernels as well. I can send backport > patches to stable tree > maintainers unless there is a way for you to mark it so that its > automatically picked for stable trees. <formletter> This is not the correct way to submit patches for inclusion in the stable kernel tree. Please read: https://www.kernel.org/doc/html/latest/process/stable-kernel-rules.html for how to do this properly. </formletter> ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH v2] nvme-pci: Set min align mask before calculating max_hw_sectors 2022-10-11 18:24 ` Greg KH @ 2022-10-11 20:35 ` Bhatnagar, Rishabh 0 siblings, 0 replies; 6+ messages in thread From: Bhatnagar, Rishabh @ 2022-10-11 20:35 UTC (permalink / raw) To: Greg KH Cc: hch, linux-kernel, linux-nvme, stable, sagi, axboe, kbusch, Bacco, Mike, Herrenschmidt, Benjamin, Park, SeongJae On 10/11/22 11:24 AM, Greg KH wrote: > CAUTION: This email originated from outside of the organization. Do not click links or open attachments unless you can confirm the sender and know the content is safe. > > > > On Tue, Oct 11, 2022 at 10:05:38AM -0700, Bhatnagar, Rishabh wrote: >> On 10/10/22 11:08 PM, hch@lst.de wrote: >>> CAUTION: This email originated from outside of the organization. Do not click links or open attachments unless you can confirm the sender and know the content is safe. >>> >>> >>> >>> The patch already made it to Linux 6.0, so I'm not sure what we need >>> to review again. >> Oh, I never got any email that this was being picked up so sent it again. >> Anyways thanks for taking it. >> We need this patch for 5.10/5.15 stable kernels as well. I can send backport >> patches to stable tree >> maintainers unless there is a way for you to mark it so that its >> automatically picked for stable trees. > <formletter> > > This is not the correct way to submit patches for inclusion in the > stable kernel tree. Please read: > https://www.kernel.org/doc/html/latest/process/stable-kernel-rules.html > for how to do this properly. > > </formletter> Since the original patch doesn't contain the CC:stable@vger.kernel.org, using option 2 makes sense as there is no special handling required to apply this for 5.10/5.15. ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2022-10-11 20:35 UTC | newest] Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2022-09-29 18:22 [PATCH v2] nvme-pci: Set min align mask before calculating max_hw_sectors Rishabh Bhatnagar [not found] ` <EB43F4D1-BFD0-408B-93E7-10643B59F766@amazon.com> 2022-10-10 17:55 ` Bhatnagar, Rishabh 2022-10-11 6:08 ` hch 2022-10-11 17:05 ` Bhatnagar, Rishabh 2022-10-11 18:24 ` Greg KH 2022-10-11 20:35 ` Bhatnagar, Rishabh
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).