From be7e4dc878eab090cd411c9ef28880e4f62116f5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dag-Erling=20Sm=C3=B8rgrav?= Date: Fri, 13 Feb 2026 19:37:07 +0100 Subject: [PATCH] nvme: Use size_t for payload size Using uint32_t here can cause spurious compiler warnings. I assume it was done to constrain the range; use a KASSERT instead. Sponsored by: Klara, Inc. Sponsored by: NetApp, Inc. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D55279 --- sys/dev/nvme/nvme_private.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/sys/dev/nvme/nvme_private.h b/sys/dev/nvme/nvme_private.h index d06862ba5f4..3dc62bc1138 100644 --- a/sys/dev/nvme/nvme_private.h +++ b/sys/dev/nvme/nvme_private.h @@ -502,11 +502,13 @@ _nvme_allocate_request(const int how, nvme_cb_fn_t cb_fn, void *cb_arg) } static __inline struct nvme_request * -nvme_allocate_request_vaddr(void *payload, uint32_t payload_size, +nvme_allocate_request_vaddr(void *payload, size_t payload_size, const int how, nvme_cb_fn_t cb_fn, void *cb_arg) { struct nvme_request *req; + KASSERT(payload_size <= UINT32_MAX, + ("payload size %zu exceeds maximum", payload_size)); req = _nvme_allocate_request(how, cb_fn, cb_arg); if (req != NULL) { req->payload = memdesc_vaddr(payload, payload_size);