mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-03 07:43:54 -06:00
vfio/migration: Refactor vfio_save_state() return value
Currently, vfio_save_state() returns 1 regardless of whether there is more data to send or not. This was done to prevent a fast changing VFIO device from potentially blocking other devices from sending their data, as qemu_savevm_state_iterate() serialized devices. Now that qemu_savevm_state_iterate() no longer serializes devices, there is no need for that. Refactor vfio_save_state() to return 0 if more data is available and 1 if no more data is available. Signed-off-by: Avihai Horon <avihaih@nvidia.com> Reviewed-by: Fabiano Rosas <farosas@suse.de> Link: https://lore.kernel.org/r/20240304105339.20713-3-avihaih@nvidia.com Signed-off-by: Peter Xu <peterx@redhat.com>
This commit is contained in:
parent
4e1871c450
commit
3f6ed59ec4
1 changed files with 1 additions and 5 deletions
|
@ -529,11 +529,7 @@ static int vfio_save_iterate(QEMUFile *f, void *opaque)
|
||||||
trace_vfio_save_iterate(vbasedev->name, migration->precopy_init_size,
|
trace_vfio_save_iterate(vbasedev->name, migration->precopy_init_size,
|
||||||
migration->precopy_dirty_size);
|
migration->precopy_dirty_size);
|
||||||
|
|
||||||
/*
|
return !migration->precopy_init_size && !migration->precopy_dirty_size;
|
||||||
* A VFIO device's pre-copy dirty_bytes is not guaranteed to reach zero.
|
|
||||||
* Return 1 so following handlers will not be potentially blocked.
|
|
||||||
*/
|
|
||||||
return 1;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static int vfio_save_complete_precopy(QEMUFile *f, void *opaque)
|
static int vfio_save_complete_precopy(QEMUFile *f, void *opaque)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue