Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
vfio/migration: Fail adding device with enable-migration=on and exist…
…ing blocker

If a device with enable-migration=on is added and it causes a migration
blocker, adding the device should fail with a proper error.

This is not the case with multiple device migration blocker when the
blocker already exists. If the blocker already exists and a device with
enable-migration=on is added which causes a migration blocker, adding
the device will succeed.

Fix it by failing adding the device in such case.

Fixes: 8bbcb64 ("vfio/migration: Make VFIO migration non-experimental")
Signed-off-by: Avihai Horon <avihaih@nvidia.com>
Reviewed-by: Cédric Le Goater <clg@redhat.com>
Signed-off-by: Cédric Le Goater <clg@redhat.com>
  • Loading branch information
avihai1122 authored and legoater committed Sep 11, 2023
1 parent 38c482b commit 8118349
Showing 1 changed file with 5 additions and 2 deletions.
7 changes: 5 additions & 2 deletions hw/vfio/common.c
Expand Up @@ -394,8 +394,7 @@ int vfio_block_multiple_devices_migration(VFIODevice *vbasedev, Error **errp)
{
int ret;

if (multiple_devices_migration_blocker ||
vfio_multiple_devices_migration_is_supported()) {
if (vfio_multiple_devices_migration_is_supported()) {
return 0;
}

Expand All @@ -405,6 +404,10 @@ int vfio_block_multiple_devices_migration(VFIODevice *vbasedev, Error **errp)
return -EINVAL;
}

if (multiple_devices_migration_blocker) {
return 0;
}

error_setg(&multiple_devices_migration_blocker,
"Multiple VFIO devices migration is supported only if all of "
"them support P2P migration");
Expand Down

0 comments on commit 8118349

Please sign in to comment.