]> xenbits.xensource.com Git - qemu-xen.git/commit
hw/nvme: fix missing cq eventidx update
authorKlaus Jensen <k.jensen@samsung.com>
Thu, 8 Dec 2022 08:12:45 +0000 (09:12 +0100)
committerMichael Tokarev <mjt@tls.msk.ru>
Wed, 29 Mar 2023 07:20:04 +0000 (10:20 +0300)
commit4e98327e1480399beeb57fab618f2495b8ba2d2c
tree27785c1d46ddd7ff2172fca035a720fecca22ec2
parent9d86da9e07d02362bca4d21cca3ebf8af4f32522
hw/nvme: fix missing cq eventidx update

Prior to reading the shadow doorbell cq head, we have to update the
eventidx. Otherwise, we risk that the driver will skip an mmio doorbell
write. This happens on riscv64, as reported by Guenter.

Adding the missing update to the cq eventidx fixes the issue.

Fixes: 3f7fe8de3d49 ("hw/nvme: Implement shadow doorbell buffer support")
Cc: qemu-stable@nongnu.org
Cc: qemu-riscv@nongnu.org
Reported-by: Guenter Roeck <linux@roeck-us.net>
Reviewed-by: Keith Busch <kbusch@kernel.org>
Signed-off-by: Klaus Jensen <k.jensen@samsung.com>
(cherry picked from commit fa5db2aa168bdc0f15c269b6212ef47632fab8ba)
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
hw/nvme/ctrl.c