On 5/15/24 15:21, Avihai Horon wrote:
> 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,
Applied to vfio-next.
Thanks,
C.
>
> Thanks.
>
> Changes from v2 [2]:
> * Added assert for vbasedev->ops->vfio_get_object and obj. (Cedric)
> * Renamed set_state() to vfio_migration_set_device_state(). (Cedric)
> * Enhanced tracing of device state change. (Cedric)
> * Added Cedric's R-b.
>
> 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-avihaih@nvidia.com/
>
> [2]
> https://lore.kernel.org/qemu-devel/20240509090954.16447-1-avihaih@nvidia.com/
>
> Avihai Horon (4):
> 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
> vfio/migration: Enhance VFIO migration state tracing
>
> MAINTAINERS | 1 +
> qapi/qapi-schema.json | 1 +
> qapi/vfio.json | 67 +++++++++++++++++++++++++++++++++
> include/hw/vfio/vfio-common.h | 1 +
> hw/vfio/migration.c | 71 ++++++++++++++++++++++++++++++++---
> hw/vfio/pci.c | 2 +
> hw/vfio/trace-events | 3 +-
> qapi/meson.build | 1 +
> 8 files changed, 141 insertions(+), 6 deletions(-)
> create mode 100644 qapi/vfio.json
>