On Wed, May 21, 2025 at 9:30 PM Keith Busch <kbusch@xxxxxxxxxx> wrote: > > On Wed, May 21, 2025 at 08:41:40PM -0700, Caleb Sander Mateos wrote: > > For the record, that change broke Linux hosts sending DSM commands to > > our NVMe controller, which was validating that the SGL length exactly > > matches the number of data bytes implied by the command. I'm sure > > we're in the minority of NVMe controller vendors in aggressively > > validating the NVMe command parameters, but it was unfortunate to > > discover this change in Linux's behavior. > > This is a fabrics target you're talking about? I assume so because pci > would use PRP for a 4k payload, which doesn't encode transfer lengths. > All the offending controllers were pci, so maybe we could have > constrained the DSM over-allocation to that transport if we knew this > was causing problems for fabrics. Yes, fabrics. I would be fine with always mapping the full 4K data length for PCI but using the exact length of the ranges for fabrics. Best, Caleb