From: Rishabh Bhatnagar <risbhat@amazon.com>
To: <linux-kernel@vger.kernel.org>, <linux-nvme@lists.infradead.org>,
<stable@vger.kernel.org>
Cc: <hch@lst.de>, <sagi@grimberg.me>, <axboe@fb.com>,
<kbusch@kernel.org>, <mbacco@amazon.com>, <benh@amazon.com>,
<sjpark@amazon.com>, "Rishabh Bhatnagar" <risbhat@amazon.com>
Subject: [PATCH v2] nvme-pci: Set min align mask before calculating max_hw_sectors
Date: Thu, 29 Sep 2022 18:22:59 +0000 [thread overview]
Message-ID: <20220929182259.22523-1-risbhat@amazon.com> (raw)
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
next reply other threads:[~2022-09-29 18:23 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-09-29 18:22 Rishabh Bhatnagar [this message]
[not found] ` <EB43F4D1-BFD0-408B-93E7-10643B59F766@amazon.com>
2022-10-10 17:55 ` [PATCH v2] nvme-pci: Set min align mask before calculating max_hw_sectors 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
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20220929182259.22523-1-risbhat@amazon.com \
--to=risbhat@amazon.com \
--cc=axboe@fb.com \
--cc=benh@amazon.com \
--cc=hch@lst.de \
--cc=kbusch@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-nvme@lists.infradead.org \
--cc=mbacco@amazon.com \
--cc=sagi@grimberg.me \
--cc=sjpark@amazon.com \
--cc=stable@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.