diff options
| author | Steve Sistare <steven.sistare@oracle.com> | 2024-02-22 09:28:38 -0800 |
|---|---|---|
| committer | Cédric Le Goater <clg@redhat.com> | 2024-03-08 22:10:13 +0100 |
| commit | 0cb51c183a91e882b10ead4ddf2321296a537c47 (patch) | |
| tree | 8f82a28bb1786ccfd0d1e6f8d2a116e69149c026 /hw/vfio/migration.c | |
| parent | d9fa4223b30ab881cc2f506fda1fc6a86aad5529 (diff) | |
| download | focaccia-qemu-0cb51c183a91e882b10ead4ddf2321296a537c47.tar.gz focaccia-qemu-0cb51c183a91e882b10ead4ddf2321296a537c47.zip | |
vfio: allow cpr-reboot migration if suspended
Allow cpr-reboot for vfio if the guest is in the suspended runstate. The guest drivers' suspend methods flush outstanding requests and re-initialize the devices, and thus there is no device state to save and restore. The user is responsible for suspending the guest before initiating cpr, such as by issuing guest-suspend-ram to the qemu guest agent. Relax the vfio blocker so it does not apply to cpr, and add a notifier that verifies the guest is suspended. Signed-off-by: Steve Sistare <steven.sistare@oracle.com> Reviewed-by: Cédric Le Goater <clg@redhat.com>
Diffstat (limited to 'hw/vfio/migration.c')
| -rw-r--r-- | hw/vfio/migration.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/hw/vfio/migration.c b/hw/vfio/migration.c index 50140eda87..2050ac8897 100644 --- a/hw/vfio/migration.c +++ b/hw/vfio/migration.c @@ -889,7 +889,7 @@ static int vfio_block_migration(VFIODevice *vbasedev, Error *err, Error **errp) vbasedev->migration_blocker = error_copy(err); error_free(err); - return migrate_add_blocker(&vbasedev->migration_blocker, errp); + return migrate_add_blocker_normal(&vbasedev->migration_blocker, errp); } /* ---------------------------------------------------------------------- */ |