diff --git a/lib/nvmf/vfio_user.c b/lib/nvmf/vfio_user.c index d95ae6660..c6c2b0d40 100644 --- a/lib/nvmf/vfio_user.c +++ b/lib/nvmf/vfio_user.c @@ -5367,7 +5367,8 @@ map_admin_cmd_req(struct nvmf_vfio_user_ctrlr *ctrlr, struct spdk_nvmf_request * len = 4096; break; case SPDK_NVME_OPC_GET_LOG_PAGE: - numdw = (((cmd->cdw11_bits.get_log_page.numdu << 16) | cmd->cdw10_bits.get_log_page.numdl) + 1); + numdw = ((((uint32_t)cmd->cdw11_bits.get_log_page.numdu << 16) | + cmd->cdw10_bits.get_log_page.numdl) + 1); if (numdw > UINT32_MAX / 4) { return -EINVAL; }