Re: [PATCH] nvme-sysfs: display max_hw_sectors_kb without requiring namespaces

From: Sagi Grimberg
Date: Sun Oct 20 2024 - 17:25:35 EST





On 18/10/2024 8:14, Christoph Hellwig wrote:
On Thu, Oct 17, 2024 at 10:40:36AM -0600, Keith Busch wrote:
On Wed, Oct 16, 2024 at 09:31:08PM +0000, Abhishek Bapat wrote:
max_hw_sectors based on DMA optimized limitation") introduced a
limitation on the value of max_hw_sectors_kb, restricting it to 128KiB
(MDTS = 5). This restricion was implemented to mitigate lockups
encountered in high-core count AMD servers.
There are other limits that can constrain transfer sizes below the
device's MDTS. For example, the driver can only preallocate so much
space for DMA and SGL descriptors, so 8MB is the current max transfer
sizes the driver can support, and a device's MDTS can be much bigger
than that.
Yes. Plus the virt boundary for PRPs, and for non-PCIe tranfers
there's also plenty of other hardware limits due to e.g. the FC HBA
and the RDMA HCA limit. There's also been some talk of a new PCIe
SGL variant with hard limits.

So I agree that exposting limits on I/O would be very useful, but it's
also kinda non-trivial.

I think the ctrl misc device attributes are fine to expose this and other
types of attributes (like we already do today).