Move the migration device state reset code from .reset_done() to dedicated callback. Signed-off-by: MichaƂ Winiarski --- drivers/vfio/pci/pds/pci_drv.c | 10 ---------- drivers/vfio/pci/pds/vfio_dev.c | 12 ++++++++++++ 2 files changed, 12 insertions(+), 10 deletions(-) diff --git a/drivers/vfio/pci/pds/pci_drv.c b/drivers/vfio/pci/pds/pci_drv.c index 4923f18231263..4cf3d2e3767a6 100644 --- a/drivers/vfio/pci/pds/pci_drv.c +++ b/drivers/vfio/pci/pds/pci_drv.c @@ -162,17 +162,7 @@ static const struct pci_device_id pds_vfio_pci_table[] = { }; MODULE_DEVICE_TABLE(pci, pds_vfio_pci_table); -static void pds_vfio_pci_aer_reset_done(struct pci_dev *pdev) -{ - struct pds_vfio_pci_device *pds_vfio = pds_vfio_pci_drvdata(pdev); - - mutex_lock(&pds_vfio->state_mutex); - pds_vfio_reset(pds_vfio, VFIO_DEVICE_STATE_RUNNING); - mutex_unlock(&pds_vfio->state_mutex); -} - static const struct pci_error_handlers pds_vfio_pci_err_handlers = { - .reset_done = pds_vfio_pci_aer_reset_done, .error_detected = vfio_pci_core_aer_err_detected, }; diff --git a/drivers/vfio/pci/pds/vfio_dev.c b/drivers/vfio/pci/pds/vfio_dev.c index f3ccb0008f675..6b29641b5819b 100644 --- a/drivers/vfio/pci/pds/vfio_dev.c +++ b/drivers/vfio/pci/pds/vfio_dev.c @@ -101,9 +101,21 @@ static int pds_vfio_get_device_state_size(struct vfio_device *vdev, return 0; } +static void pds_vfio_reset_device_state(struct vfio_device *vdev) +{ + struct pds_vfio_pci_device *pds_vfio = + container_of(vdev, struct pds_vfio_pci_device, + vfio_coredev.vdev); + + mutex_lock(&pds_vfio->state_mutex); + pds_vfio_reset(pds_vfio, VFIO_DEVICE_STATE_RUNNING); + mutex_unlock(&pds_vfio->state_mutex); +} + static const struct vfio_migration_ops pds_vfio_lm_ops = { .migration_set_state = pds_vfio_set_device_state, .migration_get_state = pds_vfio_get_device_state, + .migration_reset_state = pds_vfio_reset_device_state, .migration_get_data_size = pds_vfio_get_device_state_size }; -- 2.51.2