[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Stable-8.2.2 69/78] hw/nvme: fix invalid endian conversion
From: |
Michael Tokarev |
Subject: |
[Stable-8.2.2 69/78] hw/nvme: fix invalid endian conversion |
Date: |
Thu, 29 Feb 2024 01:54:45 +0300 |
From: Klaus Jensen <k.jensen@samsung.com>
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>
(cherry picked from commit d2b5bb860e6c17442ad95cc275feb07c1665be5c)
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
diff --git a/hw/nvme/ctrl.c b/hw/nvme/ctrl.c
index f026245d1e..76fe039704 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);
--
2.39.2
- [Stable-8.2.2 v2 00/78] Patch Round-up for stable 8.2.2, freeze on 2024-03-02, Michael Tokarev, 2024/02/28
- [Stable-8.2.2 61/78] hw/hppa/Kconfig: Fix building with "configure --without-default-devices", Michael Tokarev, 2024/02/28
- [Stable-8.2.2 63/78] system/vl: Update description for input grab key, Michael Tokarev, 2024/02/28
- [Stable-8.2.2 62/78] docs/system: Update description for input grab key, Michael Tokarev, 2024/02/28
- [Stable-8.2.2 64/78] .gitlab-ci.d/windows.yml: Drop msys2-32bit job, Michael Tokarev, 2024/02/28
- [Stable-8.2.2 65/78] target/ppc: Fix lxv/stxv MSR facility check, Michael Tokarev, 2024/02/28
- [Stable-8.2.2 69/78] hw/nvme: fix invalid endian conversion,
Michael Tokarev <=
- [Stable-8.2.2 66/78] target/ppc: Fix crash on machine check caused by ifetch, Michael Tokarev, 2024/02/28
- [Stable-8.2.2 67/78] update edk2 submodule to edk2-stable202402, Michael Tokarev, 2024/02/28
- [Stable-8.2.2 68/78] update edk2 binaries to edk2-stable202402, Michael Tokarev, 2024/02/28
- [Stable-8.2.2 70/78] pl031: Update last RTCLR value on write in case it's read back, Michael Tokarev, 2024/02/28
- [Stable-8.2.2 71/78] target/i386: mask high bits of CR3 in 32-bit mode, Michael Tokarev, 2024/02/28
- [Stable-8.2.2 73/78] target/i386: Fix physical address truncation, Michael Tokarev, 2024/02/28
- [Stable-8.2.2 72/78] target/i386: check validity of VMCB addresses, Michael Tokarev, 2024/02/28
- [Stable-8.2.2 74/78] target/i386: remove unnecessary/wrong application of the A20 mask, Michael Tokarev, 2024/02/28
- [Stable-8.2.2 75/78] target/i386: leave the A20 bit set in the final NPT walk, Michael Tokarev, 2024/02/28
- [Stable-8.2.2 76/78] tests/vm: update openbsd image to 7.4, Michael Tokarev, 2024/02/28