qemu-e2k/hw/nvme
Klaus Jensen 818b9b8f5e hw/nvme: fix aio cancel in dsm
When the DSM operation is cancelled asynchronously, we set iocb->ret to
-ECANCELED. However, the callback function only checks the return value
of the completed aio, which may have completed succesfully prior to the
cancellation and thus the callback ends up continuing the dsm operation
instead of bailing out. Fix this.

Secondly, fix a potential use-after-free by removing the bottom half and
enqueuing the completion directly.

Fixes: d7d1474fd8 ("hw/nvme: reimplement dsm to allow cancellation")
Reviewed-by: Keith Busch <kbusch@kernel.org>
Signed-off-by: Klaus Jensen <k.jensen@samsung.com>
2022-12-01 08:45:00 +01:00
..
ctrl.c hw/nvme: fix aio cancel in dsm 2022-12-01 08:45:00 +01:00
dif.c hw/nvme: add new command abort case 2022-06-03 21:48:24 +02:00
dif.h hw/nvme: 64-bit pi support 2022-03-03 09:30:21 +01:00
Kconfig
meson.build
ns.c hw/nvme: force nvme-ns param 'shared' to false if no nvme-subsys node 2022-07-15 10:40:33 +02:00
nvme.h hw/nvme: reenable cqe batching 2022-11-02 09:23:05 +01:00
subsys.c hw/nvme: Add support for Secondary Controller List 2022-06-23 23:24:28 +02:00
trace-events hw/nvme: Add trace events for shadow doorbell buffer 2022-07-15 10:40:33 +02:00
trace.h