vfio_migration_init() initializes VFIOMigration->device_state using enum
of VFIO migration protocol v2. Current implemented protocol is v1 so v1
enum should be used. Fix it.
Fixes: 429c72800654 ("vfio/migration: Fix incorrect initialization value for parameters in VFIOMigration")
Signed-off-by: Avihai Horon <avihaih@nvidia.com>
---
hw/vfio/migration.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/hw/vfio/migration.c b/hw/vfio/migration.c
index d9598ce070..8dbbfa2c56 100644
--- a/hw/vfio/migration.c
+++ b/hw/vfio/migration.c
@@ -803,7 +803,7 @@ static int vfio_migration_init(VFIODevice *vbasedev,
}
vbasedev->migration = g_new0(VFIOMigration, 1);
- vbasedev->migration->device_state = VFIO_DEVICE_STATE_RUNNING;
+ vbasedev->migration->device_state = VFIO_DEVICE_STATE_V1_RUNNING;
vbasedev->migration->vm_running = runstate_is_running();
ret = vfio_region_setup(obj, vbasedev, &vbasedev->migration->region,
--
2.21.3
> -----Original Message-----
> From: Qemu-devel <qemu-devel-bounces+chen.zhang=intel.com@nongnu.org>
> On Behalf Of Avihai Horon
> Sent: Sunday, October 16, 2022 4:58 PM
> To: qemu-devel@nongnu.org; Alex Williamson
> <alex.williamson@redhat.com>; Kunkun Jiang <jiangkunkun@huawei.com>
> Cc: Avihai Horon <avihaih@nvidia.com>
> Subject: [PATCH] vfio/migration: Fix wrong enum usage
>
> vfio_migration_init() initializes VFIOMigration->device_state using enum of
> VFIO migration protocol v2. Current implemented protocol is v1 so v1 enum
> should be used. Fix it.
>
> Fixes: 429c72800654 ("vfio/migration: Fix incorrect initialization value for
> parameters in VFIOMigration")
> Signed-off-by: Avihai Horon <avihaih@nvidia.com>
Looks good to me.
Reviewed-by: Zhang Chen <chen.zhang@intel.com>
But I found nowhere using the enum of VFIO migration protocol v2 (vfio_device_mig_state).
I don't know more about the background, should we remove the redundancy definition or add full support for
the VFIO migration protocol v2 ?
Thanks
Chen
> ---
> hw/vfio/migration.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/hw/vfio/migration.c b/hw/vfio/migration.c index
> d9598ce070..8dbbfa2c56 100644
> --- a/hw/vfio/migration.c
> +++ b/hw/vfio/migration.c
> @@ -803,7 +803,7 @@ static int vfio_migration_init(VFIODevice *vbasedev,
> }
>
> vbasedev->migration = g_new0(VFIOMigration, 1);
> - vbasedev->migration->device_state = VFIO_DEVICE_STATE_RUNNING;
> + vbasedev->migration->device_state = VFIO_DEVICE_STATE_V1_RUNNING;
> vbasedev->migration->vm_running = runstate_is_running();
>
> ret = vfio_region_setup(obj, vbasedev, &vbasedev->migration->region,
> --
> 2.21.3
>
On 18/10/2022 5:37, Zhang, Chen wrote:
> External email: Use caution opening links or attachments
>
>
>> -----Original Message-----
>> From: Qemu-devel <qemu-devel-bounces+chen.zhang=intel.com@nongnu.org>
>> On Behalf Of Avihai Horon
>> Sent: Sunday, October 16, 2022 4:58 PM
>> To: qemu-devel@nongnu.org; Alex Williamson
>> <alex.williamson@redhat.com>; Kunkun Jiang <jiangkunkun@huawei.com>
>> Cc: Avihai Horon <avihaih@nvidia.com>
>> Subject: [PATCH] vfio/migration: Fix wrong enum usage
>>
>> vfio_migration_init() initializes VFIOMigration->device_state using enum of
>> VFIO migration protocol v2. Current implemented protocol is v1 so v1 enum
>> should be used. Fix it.
>>
>> Fixes: 429c72800654 ("vfio/migration: Fix incorrect initialization value for
>> parameters in VFIOMigration")
>> Signed-off-by: Avihai Horon <avihaih@nvidia.com>
> Looks good to me.
> Reviewed-by: Zhang Chen <chen.zhang@intel.com>
>
> But I found nowhere using the enum of VFIO migration protocol v2 (vfio_device_mig_state).
> I don't know more about the background, should we remove the redundancy definition or add full support for
> the VFIO migration protocol v2 ?
We are currently in the process of adding support for v2 protocol that
will replace v1.
Once v2 is added, v1 will be removed.
Thanks.
>
> Thanks
> Chen
>
>> ---
>> hw/vfio/migration.c | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/hw/vfio/migration.c b/hw/vfio/migration.c index
>> d9598ce070..8dbbfa2c56 100644
>> --- a/hw/vfio/migration.c
>> +++ b/hw/vfio/migration.c
>> @@ -803,7 +803,7 @@ static int vfio_migration_init(VFIODevice *vbasedev,
>> }
>>
>> vbasedev->migration = g_new0(VFIOMigration, 1);
>> - vbasedev->migration->device_state = VFIO_DEVICE_STATE_RUNNING;
>> + vbasedev->migration->device_state = VFIO_DEVICE_STATE_V1_RUNNING;
>> vbasedev->migration->vm_running = runstate_is_running();
>>
>> ret = vfio_region_setup(obj, vbasedev, &vbasedev->migration->region,
>> --
>> 2.21.3
>>
© 2016 - 2026 Red Hat, Inc.