]> Gentwo Git Trees - linux/.git/commit
nvme: remove virtual boundary for sgl capable devices
authorKeith Busch <kbusch@kernel.org>
Tue, 14 Oct 2025 15:04:56 +0000 (08:04 -0700)
committerJens Axboe <axboe@kernel.dk>
Fri, 7 Nov 2025 01:11:58 +0000 (18:11 -0700)
commitbc840b21a25a50f00e2b240329c09281506df387
tree435390fd780e1183557e14359fcd809b388b56d1
parent2f6b2565d43cdb5087cac23d530cca84aa3d897e
nvme: remove virtual boundary for sgl capable devices

The nvme virtual boundary is only required for the PRP format. Devices
that can use SGL for DMA don't need it for IO queues. Drop reporting it
for such devices; rdma fabrics controllers will continue to use the
limit as they currently don't report any boundary requirements, but tcp
and fc never needed it in the first place so they get to report no
virtual boundary.

Applications may continue to align to the same virtual boundaries for
optimization purposes if they want, and the driver will continue to
decide whether to use the PRP format the same as before if the IO allows
it.

Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Keith Busch <kbusch@kernel.org>
Reviewed-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
drivers/nvme/host/apple.c
drivers/nvme/host/core.c
drivers/nvme/host/fabrics.h
drivers/nvme/host/fc.c
drivers/nvme/host/nvme.h
drivers/nvme/host/pci.c
drivers/nvme/host/rdma.c
drivers/nvme/host/tcp.c
drivers/nvme/target/loop.c