diff options
author | Klaus Jensen <k.jensen@samsung.com> | 2024-02-22 10:29:06 +0100 |
---|---|---|
committer | Philippe Mathieu-Daudé <philmd@linaro.org> | 2024-02-27 09:37:30 +0100 |
commit | d2b5bb860e6c17442ad95cc275feb07c1665be5c (patch) | |
tree | fd49439eaf395218df4ab12c5db07de78a69ce28 | |
parent | fa4fa2056da7bab48c32c175c7ffd9a2524fc53f (diff) | |
download | qemu-d2b5bb860e6c17442ad95cc275feb07c1665be5c.zip qemu-d2b5bb860e6c17442ad95cc275feb07c1665be5c.tar.gz qemu-d2b5bb860e6c17442ad95cc275feb07c1665be5c.tar.bz2 |
hw/nvme: fix invalid endian conversion
numcntl is one byte and so is max_vfs. Using cpu_to_le16 on big endian
hosts results in numcntl being set to 0.
Fix by dropping the endian conversion.
Fixes: 99f48ae7ae ("hw/nvme: Add support for Secondary Controller List")
Reported-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Klaus Jensen <k.jensen@samsung.com>
Reviewed-by: Minwoo Im <minwoo.im@samsung.com>
Message-ID: <20240222-fix-sriov-numcntl-v1-1-d60bea5e72d0@samsung.com>
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
-rw-r--r-- | hw/nvme/ctrl.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/hw/nvme/ctrl.c b/hw/nvme/ctrl.c index f026245..76fe039 100644 --- a/hw/nvme/ctrl.c +++ b/hw/nvme/ctrl.c @@ -7924,7 +7924,7 @@ static void nvme_init_state(NvmeCtrl *n) n->aer_reqs = g_new0(NvmeRequest *, n->params.aerl + 1); QTAILQ_INIT(&n->aer_queue); - list->numcntl = cpu_to_le16(max_vfs); + list->numcntl = max_vfs; for (i = 0; i < max_vfs; i++) { sctrl = &list->sec[i]; sctrl->pcid = cpu_to_le16(n->cntlid); |