nvme-pci: iod npages fits in s8
authorKeith Busch <kbusch@kernel.org>
Tue, 6 Sep 2022 16:07:37 +0000 (09:07 -0700)
committerChristoph Hellwig <hch@lst.de>
Mon, 19 Sep 2022 15:55:25 +0000 (17:55 +0200)
commitc372cdd1efdf2b8e51fdde36a2a05c263ab5ebb7
tree5dfe0e15874ca2d3b210dda6d9e2ff97e3aa0108
parent52da4f3f5cbd42815946c0544774167241f9f45f
nvme-pci: iod npages fits in s8

The largest allowed transfer is 4MB, which can use at most 1025 PRPs.
Each PRP is 8 bytes, so the maximum number of 4k nvme pages needed for
the iod_list is 3, which fits in an 's8' type.

While modifying this field, change the name to "nr_allocations" to
better represent that this is referring to the number of units allocated
from a dma_pool.

Also introduce a BUILD_BUG_ON to ensure we never accidently increase the
largest transfer limit beyond 127 chained prp lists.

Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com>
Signed-off-by: Keith Busch <kbusch@kernel.org>
Signed-off-by: Christoph Hellwig <hch@lst.de>
drivers/nvme/host/pci.c