mirror of
https://github.com/izzy2lost/xemu.git
synced 2026-07-06 00:20:22 -07:00
vfio/container: fails mdev hotplug if add migration blocker failed
It's aggressive to abort a running QEMU process when hotplug a mdev and it fails migration blocker adding. Fix by just failing mdev hotplug itself. Signed-off-by: Zhenzhong Duan <zhenzhong.duan@intel.com> Reviewed-by: Cédric Le Goater <clg@redhat.com> Link: https://lore.kernel.org/qemu-devel/20250623102235.94877-3-zhenzhong.duan@intel.com [ clg: Changed test on value returned by migrate_add_blocker_modes() ] Signed-off-by: Cédric Le Goater <clg@redhat.com>
This commit is contained in:
committed by
Cédric Le Goater
parent
abc6249d42
commit
c72d6ebaad
+6
-2
@@ -992,12 +992,16 @@ static bool vfio_legacy_attach_device(const char *name, VFIODevice *vbasedev,
|
||||
if (vbasedev->mdev) {
|
||||
error_setg(&vbasedev->cpr.mdev_blocker,
|
||||
"CPR does not support vfio mdev %s", vbasedev->name);
|
||||
migrate_add_blocker_modes(&vbasedev->cpr.mdev_blocker, &error_fatal,
|
||||
MIG_MODE_CPR_TRANSFER, -1);
|
||||
if (migrate_add_blocker_modes(&vbasedev->cpr.mdev_blocker, errp,
|
||||
MIG_MODE_CPR_TRANSFER, -1) < 0) {
|
||||
goto hiod_unref_exit;
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
|
||||
hiod_unref_exit:
|
||||
object_unref(vbasedev->hiod);
|
||||
device_put_exit:
|
||||
vfio_device_put(vbasedev);
|
||||
group_put_exit:
|
||||
|
||||
Reference in New Issue
Block a user