]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
ch: reattach PCI devices to host while stopping guest
authorPraveen K Paladugu <praveenkpaladugu@gmail.com>
Fri, 11 Oct 2024 18:13:10 +0000 (13:13 -0500)
committerMichal Privoznik <mprivozn@redhat.com>
Fri, 15 Nov 2024 12:15:38 +0000 (13:15 +0100)
Reattach PCI devices to host, while stopping ch guest.

Signed-off-by: Praveen K Paladugu <prapal@linux.microsoft.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
src/ch/ch_process.c

index ed0fa1fedba28364c98330056d6ff1fff29e5ee2..61e263b62b8cf9871315a8301bafc8c0dc32bd55 100644 (file)
@@ -971,12 +971,13 @@ virCHProcessStart(virCHDriver *driver,
 }
 
 int
-virCHProcessStop(virCHDriver *driver G_GNUC_UNUSED,
+virCHProcessStop(virCHDriver *driver,
                  virDomainObj *vm,
                  virDomainShutoffReason reason)
 {
     int ret;
     int retries = 0;
+    unsigned int hostdev_flags = VIR_HOSTDEV_SP_PCI;
     virCHDomainObjPrivate *priv = vm->privateData;
     virCHDriverConfig *cfg = virCHDriverGetConfig(driver);
     virDomainDef *def = vm->def;
@@ -1015,6 +1016,8 @@ virCHProcessStop(virCHDriver *driver G_GNUC_UNUSED,
 
     virDomainObjSetState(vm, VIR_DOMAIN_SHUTOFF, reason);
 
+    virHostdevReAttachDomainDevices(driver->hostdevMgr, CH_DRIVER_NAME, def,
+                                    hostdev_flags);
     return 0;
 }