mirror of https://gitee.com/openkylin/libvirt.git
Conditionally wait for kvm_assigned_device cleanup
Only wait for kvm device cleanup if the driver is pci-stub
This commit is contained in:
parent
4e46107e43
commit
82e8dd4cf8
|
@ -1256,8 +1256,6 @@ qemuPrepareHostDevices(virQEMUDriverPtr driver,
|
|||
static void
|
||||
qemuReattachPciDevice(virPCIDevicePtr dev, virHostdevManagerPtr mgr)
|
||||
{
|
||||
int retries = 100;
|
||||
|
||||
/* If the device is not managed and was attached to guest
|
||||
* successfully, it must have been inactive.
|
||||
*/
|
||||
|
@ -1267,11 +1265,15 @@ qemuReattachPciDevice(virPCIDevicePtr dev, virHostdevManagerPtr mgr)
|
|||
return;
|
||||
}
|
||||
|
||||
/* Wait for device cleanup if it is qemu/kvm */
|
||||
if (STREQ(virPCIDeviceGetStubDriver(dev), "pci-stub")) {
|
||||
int retries = 100;
|
||||
while (virPCIDeviceWaitForCleanup(dev, "kvm_assigned_device")
|
||||
&& retries) {
|
||||
usleep(100*1000);
|
||||
retries--;
|
||||
}
|
||||
}
|
||||
|
||||
if (virPCIDeviceReattach(dev, mgr->activePciHostdevs,
|
||||
mgr->inactivePciHostdevs) < 0) {
|
||||
|
|
Loading…
Reference in New Issue