qemu/hw/mem
Davidlohr Bueso 98cbac128f hw/cxl: Support aborting background commands
As of 3.1 spec, background commands can be canceled with a new
abort command. Implement the support, which is advertised in
the CEL. No ad-hoc context undoing is necessary as all the
command logic of the running bg command is done upon completion.
Arbitrarily, the on-going background cmd will not be aborted if
already at least 85% done;

A mutex is introduced to stabilize mbox request cancel command vs
the timer callback being fired scenarios (as well as reading the
mbox registers). While some operations under critical regions
may be unnecessary (irq notifying, cmd callbacks), this is not
a path where performance is important, so simplicity is preferred.

Tested-by: Ajay Joshi <ajay.opensrc@micron.com>
Reviewed-by: Ajay Joshi <ajay.opensrc@micron.com>
Signed-off-by: Davidlohr Bueso <dave@stgolabs.net>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Message-Id: <20250305092501.191929-2-Jonathan.Cameron@huawei.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
2025-05-14 05:39:14 -04:00
..
cxl_type3.c hw/cxl: Support aborting background commands 2025-05-14 05:39:14 -04:00
cxl_type3_stubs.c hw/cxl/events: Improve QMP interfaces and documentation for add/release dynamic capacity. 2024-07-03 18:14:07 -04:00
Kconfig hw/cxl/device: Add a memory device (8.2.8.5) 2022-05-13 06:13:36 -04:00
memory-device-stubs.c memory-device: move stubs out of stubs/ 2024-04-18 11:17:27 +02:00
memory-device.c include/system: Move exec/address-spaces.h to system/address-spaces.h 2025-04-23 14:08:21 -07:00
meson.build memory-device: move stubs out of stubs/ 2024-04-18 11:17:27 +02:00
npcm7xx_mc.c qom: Have class_init() take a const data argument 2025-04-25 17:00:41 +02:00
nvdimm.c qom: Have class_init() take a const data argument 2025-04-25 17:00:41 +02:00
pc-dimm.c qom: Make InterfaceInfo[] uses const 2025-04-25 17:00:41 +02:00
sparse-mem.c qom: Have class_init() take a const data argument 2025-04-25 17:00:41 +02:00
trace-events docs: fix references to docs/devel/tracing.rst 2021-06-02 06:51:09 +02:00
trace.h trace: switch position of headers to what Meson requires 2020-08-21 06:18:24 -04:00