Hello, This series adds a new QAPI event for VFIO device migration state change. This event will be emitted when a VFIO device changes its state, for example, during migration or when stopping/starting the guest.
This event can be used by management applications to get updates on the current state of the VFIO device for their own purposes. A new per VFIO device capability, "migration-events", is added so events can be enabled only for the required devices. It is disabled by default. Feedback/comments are appreciated, Thanks. Changes from v1 [1]: * Added more info to patch #1 commit mesasge. (Markus) * Renamed VFIODeviceMigState to VfioMigrationState and VFIO_DEVICE_MIG_STATE_CHANGED to VFIO_MIGRATION. (Joao, Markus) * Added qom-path and qdev id to VFIO_MIGRATION event data. (Markus) * Handled no-op state transitions in vfio_migration_set_state(). (Cedric) * Added helper to set VFIO state and emit VFIO event. (Peter) [1] https://lore.kernel.org/qemu-devel/20240430051621.19597-1-avih...@nvidia.com/ Avihai Horon (3): qapi/vfio: Add VFIO migration QAPI event vfio/migration: Emit VFIO migration QAPI event vfio/migration: Don't emit STOP_COPY VFIO migration QAPI event twice MAINTAINERS | 1 + qapi/qapi-schema.json | 1 + qapi/vfio.json | 67 +++++++++++++++++++++++++++++++++++ include/hw/vfio/vfio-common.h | 1 + hw/vfio/migration.c | 60 +++++++++++++++++++++++++++++-- hw/vfio/pci.c | 2 ++ qapi/meson.build | 1 + 7 files changed, 130 insertions(+), 3 deletions(-) create mode 100644 qapi/vfio.json -- 2.26.3