Message ID | 167820912978.606734.12740287349119694623.stgit@omen (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [v2] vfio/migration: Rename entry points | expand |
On 3/7/23 18:13, Alex Williamson wrote: > Pick names that align with the section drivers should use them from, > avoiding the confusion of calling a _finalize() function from _exit() > and generalizing the actual _finalize() to handle removing the viommu > blocker. > > Signed-off-by: Alex Williamson <alex.williamson@redhat.com> > --- > > v2: ...but there's already a vfio_migration_exit(), it should really > just be inlined, but for minimally invasive change, just rename to > vfio_migration_free(). Reviewed-by: Cédric Le Goater <clg@redhat.com> Thanks, C. > > hw/vfio/common.c | 2 +- > hw/vfio/migration.c | 8 ++++---- > hw/vfio/pci.c | 6 +++--- > include/hw/vfio/vfio-common.h | 6 +++--- > 4 files changed, 11 insertions(+), 11 deletions(-) > > diff --git a/hw/vfio/common.c b/hw/vfio/common.c > index 2b9bcf70aa36..dddd7a8e40f8 100644 > --- a/hw/vfio/common.c > +++ b/hw/vfio/common.c > @@ -447,7 +447,7 @@ int vfio_block_giommu_migration(Error **errp) > return ret; > } > > -void vfio_unblock_giommu_migration(void) > +void vfio_migration_finalize(void) > { > if (!giommu_migration_blocker || > vfio_viommu_preset()) { > diff --git a/hw/vfio/migration.c b/hw/vfio/migration.c > index 5d1e66f69194..1a1a8659c859 100644 > --- a/hw/vfio/migration.c > +++ b/hw/vfio/migration.c > @@ -521,7 +521,7 @@ static void vfio_migration_state_notifier(Notifier *notifier, void *data) > } > } > > -static void vfio_migration_exit(VFIODevice *vbasedev) > +static void vfio_migration_free(VFIODevice *vbasedev) > { > g_free(vbasedev->migration); > vbasedev->migration = NULL; > @@ -631,7 +631,7 @@ int64_t vfio_mig_bytes_transferred(void) > return bytes_transferred; > } > > -int vfio_migration_probe(VFIODevice *vbasedev, Error **errp) > +int vfio_migration_realize(VFIODevice *vbasedev, Error **errp) > { > int ret = -ENOTSUP; > > @@ -669,7 +669,7 @@ add_blocker: > return ret; > } > > -void vfio_migration_finalize(VFIODevice *vbasedev) > +void vfio_migration_exit(VFIODevice *vbasedev) > { > if (vbasedev->migration) { > VFIOMigration *migration = vbasedev->migration; > @@ -677,7 +677,7 @@ void vfio_migration_finalize(VFIODevice *vbasedev) > remove_migration_state_change_notifier(&migration->migration_state); > qemu_del_vm_change_state_handler(migration->vm_state); > unregister_savevm(VMSTATE_IF(vbasedev->dev), "vfio", vbasedev); > - vfio_migration_exit(vbasedev); > + vfio_migration_free(vbasedev); > vfio_unblock_multiple_devices_migration(); > } > > diff --git a/hw/vfio/pci.c b/hw/vfio/pci.c > index 30a271eab38c..ec9a854361ac 100644 > --- a/hw/vfio/pci.c > +++ b/hw/vfio/pci.c > @@ -3145,7 +3145,7 @@ static void vfio_realize(PCIDevice *pdev, Error **errp) > } > > if (!pdev->failover_pair_id) { > - ret = vfio_migration_probe(vbasedev, errp); > + ret = vfio_migration_realize(vbasedev, errp); > if (ret) { > error_report("%s: Migration disabled", vbasedev->name); > } > @@ -3185,7 +3185,7 @@ static void vfio_instance_finalize(Object *obj) > */ > vfio_put_device(vdev); > vfio_put_group(group); > - vfio_unblock_giommu_migration(); > + vfio_migration_finalize(); > } > > static void vfio_exitfn(PCIDevice *pdev) > @@ -3204,7 +3204,7 @@ static void vfio_exitfn(PCIDevice *pdev) > } > vfio_teardown_msi(vdev); > vfio_bars_exit(vdev); > - vfio_migration_finalize(&vdev->vbasedev); > + vfio_migration_exit(&vdev->vbasedev); > } > > static void vfio_pci_reset(DeviceState *dev) > diff --git a/include/hw/vfio/vfio-common.h b/include/hw/vfio/vfio-common.h > index 009bec34c4bc..eed244f25f34 100644 > --- a/include/hw/vfio/vfio-common.h > +++ b/include/hw/vfio/vfio-common.h > @@ -223,7 +223,6 @@ bool vfio_mig_active(void); > int vfio_block_multiple_devices_migration(Error **errp); > void vfio_unblock_multiple_devices_migration(void); > int vfio_block_giommu_migration(Error **errp); > -void vfio_unblock_giommu_migration(void); > int64_t vfio_mig_bytes_transferred(void); > > #ifdef CONFIG_LINUX > @@ -247,7 +246,8 @@ int vfio_spapr_create_window(VFIOContainer *container, > int vfio_spapr_remove_window(VFIOContainer *container, > hwaddr offset_within_address_space); > > -int vfio_migration_probe(VFIODevice *vbasedev, Error **errp); > -void vfio_migration_finalize(VFIODevice *vbasedev); > +int vfio_migration_realize(VFIODevice *vbasedev, Error **errp); > +void vfio_migration_exit(VFIODevice *vbasedev); > +void vfio_migration_finalize(void); > > #endif /* HW_VFIO_VFIO_COMMON_H */ > >
On 07/03/2023 17:13, Alex Williamson wrote: > Pick names that align with the section drivers should use them from, > avoiding the confusion of calling a _finalize() function from _exit() > and generalizing the actual _finalize() to handle removing the viommu > blocker. > > Signed-off-by: Alex Williamson <alex.williamson@redhat.com> Reviewed-by: Joao Martins <joao.m.martins@oracle.com> > --- > > v2: ...but there's already a vfio_migration_exit(), it should really > just be inlined, but for minimally invasive change, just rename to > vfio_migration_free(). > > hw/vfio/common.c | 2 +- > hw/vfio/migration.c | 8 ++++---- > hw/vfio/pci.c | 6 +++--- > include/hw/vfio/vfio-common.h | 6 +++--- > 4 files changed, 11 insertions(+), 11 deletions(-) > > diff --git a/hw/vfio/common.c b/hw/vfio/common.c > index 2b9bcf70aa36..dddd7a8e40f8 100644 > --- a/hw/vfio/common.c > +++ b/hw/vfio/common.c > @@ -447,7 +447,7 @@ int vfio_block_giommu_migration(Error **errp) > return ret; > } > > -void vfio_unblock_giommu_migration(void) > +void vfio_migration_finalize(void) > { > if (!giommu_migration_blocker || > vfio_viommu_preset()) { > diff --git a/hw/vfio/migration.c b/hw/vfio/migration.c > index 5d1e66f69194..1a1a8659c859 100644 > --- a/hw/vfio/migration.c > +++ b/hw/vfio/migration.c > @@ -521,7 +521,7 @@ static void vfio_migration_state_notifier(Notifier *notifier, void *data) > } > } > > -static void vfio_migration_exit(VFIODevice *vbasedev) > +static void vfio_migration_free(VFIODevice *vbasedev) > { > g_free(vbasedev->migration); > vbasedev->migration = NULL; > @@ -631,7 +631,7 @@ int64_t vfio_mig_bytes_transferred(void) > return bytes_transferred; > } > > -int vfio_migration_probe(VFIODevice *vbasedev, Error **errp) > +int vfio_migration_realize(VFIODevice *vbasedev, Error **errp) > { > int ret = -ENOTSUP; > > @@ -669,7 +669,7 @@ add_blocker: > return ret; > } > > -void vfio_migration_finalize(VFIODevice *vbasedev) > +void vfio_migration_exit(VFIODevice *vbasedev) > { > if (vbasedev->migration) { > VFIOMigration *migration = vbasedev->migration; > @@ -677,7 +677,7 @@ void vfio_migration_finalize(VFIODevice *vbasedev) > remove_migration_state_change_notifier(&migration->migration_state); > qemu_del_vm_change_state_handler(migration->vm_state); > unregister_savevm(VMSTATE_IF(vbasedev->dev), "vfio", vbasedev); > - vfio_migration_exit(vbasedev); > + vfio_migration_free(vbasedev); > vfio_unblock_multiple_devices_migration(); > } > > diff --git a/hw/vfio/pci.c b/hw/vfio/pci.c > index 30a271eab38c..ec9a854361ac 100644 > --- a/hw/vfio/pci.c > +++ b/hw/vfio/pci.c > @@ -3145,7 +3145,7 @@ static void vfio_realize(PCIDevice *pdev, Error **errp) > } > > if (!pdev->failover_pair_id) { > - ret = vfio_migration_probe(vbasedev, errp); > + ret = vfio_migration_realize(vbasedev, errp); > if (ret) { > error_report("%s: Migration disabled", vbasedev->name); > } > @@ -3185,7 +3185,7 @@ static void vfio_instance_finalize(Object *obj) > */ > vfio_put_device(vdev); > vfio_put_group(group); > - vfio_unblock_giommu_migration(); > + vfio_migration_finalize(); > } > > static void vfio_exitfn(PCIDevice *pdev) > @@ -3204,7 +3204,7 @@ static void vfio_exitfn(PCIDevice *pdev) > } > vfio_teardown_msi(vdev); > vfio_bars_exit(vdev); > - vfio_migration_finalize(&vdev->vbasedev); > + vfio_migration_exit(&vdev->vbasedev); > } > > static void vfio_pci_reset(DeviceState *dev) > diff --git a/include/hw/vfio/vfio-common.h b/include/hw/vfio/vfio-common.h > index 009bec34c4bc..eed244f25f34 100644 > --- a/include/hw/vfio/vfio-common.h > +++ b/include/hw/vfio/vfio-common.h > @@ -223,7 +223,6 @@ bool vfio_mig_active(void); > int vfio_block_multiple_devices_migration(Error **errp); > void vfio_unblock_multiple_devices_migration(void); > int vfio_block_giommu_migration(Error **errp); > -void vfio_unblock_giommu_migration(void); > int64_t vfio_mig_bytes_transferred(void); > > #ifdef CONFIG_LINUX > @@ -247,7 +246,8 @@ int vfio_spapr_create_window(VFIOContainer *container, > int vfio_spapr_remove_window(VFIOContainer *container, > hwaddr offset_within_address_space); > > -int vfio_migration_probe(VFIODevice *vbasedev, Error **errp); > -void vfio_migration_finalize(VFIODevice *vbasedev); > +int vfio_migration_realize(VFIODevice *vbasedev, Error **errp); > +void vfio_migration_exit(VFIODevice *vbasedev); > +void vfio_migration_finalize(void); > > #endif /* HW_VFIO_VFIO_COMMON_H */ > >
diff --git a/hw/vfio/common.c b/hw/vfio/common.c index 2b9bcf70aa36..dddd7a8e40f8 100644 --- a/hw/vfio/common.c +++ b/hw/vfio/common.c @@ -447,7 +447,7 @@ int vfio_block_giommu_migration(Error **errp) return ret; } -void vfio_unblock_giommu_migration(void) +void vfio_migration_finalize(void) { if (!giommu_migration_blocker || vfio_viommu_preset()) { diff --git a/hw/vfio/migration.c b/hw/vfio/migration.c index 5d1e66f69194..1a1a8659c859 100644 --- a/hw/vfio/migration.c +++ b/hw/vfio/migration.c @@ -521,7 +521,7 @@ static void vfio_migration_state_notifier(Notifier *notifier, void *data) } } -static void vfio_migration_exit(VFIODevice *vbasedev) +static void vfio_migration_free(VFIODevice *vbasedev) { g_free(vbasedev->migration); vbasedev->migration = NULL; @@ -631,7 +631,7 @@ int64_t vfio_mig_bytes_transferred(void) return bytes_transferred; } -int vfio_migration_probe(VFIODevice *vbasedev, Error **errp) +int vfio_migration_realize(VFIODevice *vbasedev, Error **errp) { int ret = -ENOTSUP; @@ -669,7 +669,7 @@ add_blocker: return ret; } -void vfio_migration_finalize(VFIODevice *vbasedev) +void vfio_migration_exit(VFIODevice *vbasedev) { if (vbasedev->migration) { VFIOMigration *migration = vbasedev->migration; @@ -677,7 +677,7 @@ void vfio_migration_finalize(VFIODevice *vbasedev) remove_migration_state_change_notifier(&migration->migration_state); qemu_del_vm_change_state_handler(migration->vm_state); unregister_savevm(VMSTATE_IF(vbasedev->dev), "vfio", vbasedev); - vfio_migration_exit(vbasedev); + vfio_migration_free(vbasedev); vfio_unblock_multiple_devices_migration(); } diff --git a/hw/vfio/pci.c b/hw/vfio/pci.c index 30a271eab38c..ec9a854361ac 100644 --- a/hw/vfio/pci.c +++ b/hw/vfio/pci.c @@ -3145,7 +3145,7 @@ static void vfio_realize(PCIDevice *pdev, Error **errp) } if (!pdev->failover_pair_id) { - ret = vfio_migration_probe(vbasedev, errp); + ret = vfio_migration_realize(vbasedev, errp); if (ret) { error_report("%s: Migration disabled", vbasedev->name); } @@ -3185,7 +3185,7 @@ static void vfio_instance_finalize(Object *obj) */ vfio_put_device(vdev); vfio_put_group(group); - vfio_unblock_giommu_migration(); + vfio_migration_finalize(); } static void vfio_exitfn(PCIDevice *pdev) @@ -3204,7 +3204,7 @@ static void vfio_exitfn(PCIDevice *pdev) } vfio_teardown_msi(vdev); vfio_bars_exit(vdev); - vfio_migration_finalize(&vdev->vbasedev); + vfio_migration_exit(&vdev->vbasedev); } static void vfio_pci_reset(DeviceState *dev) diff --git a/include/hw/vfio/vfio-common.h b/include/hw/vfio/vfio-common.h index 009bec34c4bc..eed244f25f34 100644 --- a/include/hw/vfio/vfio-common.h +++ b/include/hw/vfio/vfio-common.h @@ -223,7 +223,6 @@ bool vfio_mig_active(void); int vfio_block_multiple_devices_migration(Error **errp); void vfio_unblock_multiple_devices_migration(void); int vfio_block_giommu_migration(Error **errp); -void vfio_unblock_giommu_migration(void); int64_t vfio_mig_bytes_transferred(void); #ifdef CONFIG_LINUX @@ -247,7 +246,8 @@ int vfio_spapr_create_window(VFIOContainer *container, int vfio_spapr_remove_window(VFIOContainer *container, hwaddr offset_within_address_space); -int vfio_migration_probe(VFIODevice *vbasedev, Error **errp); -void vfio_migration_finalize(VFIODevice *vbasedev); +int vfio_migration_realize(VFIODevice *vbasedev, Error **errp); +void vfio_migration_exit(VFIODevice *vbasedev); +void vfio_migration_finalize(void); #endif /* HW_VFIO_VFIO_COMMON_H */
Pick names that align with the section drivers should use them from, avoiding the confusion of calling a _finalize() function from _exit() and generalizing the actual _finalize() to handle removing the viommu blocker. Signed-off-by: Alex Williamson <alex.williamson@redhat.com> --- v2: ...but there's already a vfio_migration_exit(), it should really just be inlined, but for minimally invasive change, just rename to vfio_migration_free(). hw/vfio/common.c | 2 +- hw/vfio/migration.c | 8 ++++---- hw/vfio/pci.c | 6 +++--- include/hw/vfio/vfio-common.h | 6 +++--- 4 files changed, 11 insertions(+), 11 deletions(-)