Re: [PATCH RESEND] qemu: Do not free the device from activePciHostdevs if it's in use

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2011年12月15日 06:57, Eric Blake wrote:
On 11/29/2011 03:23 AM, Osier Yang wrote:
* src/qemu/qemu_hostdev.c (qemuDomainReAttachHostdevDevices):
pciDeviceListFree(pcidevs) in the end free()s the device even if
it's in use by other domain, which can cause rase.

s/rase/a race/

...

The patch also fixes another problem, there won't be error like
"qemuDomainReAttachHostdevDevices: Not reattaching active
device 0000:00:19.0" in daemon log if some device is in active.
As pciResetDevice and pciReattachDevice won't be called for
the device anymore. This is sensiable as we already reported

s/sensiable/sensible/

error when preparing the device if it's active. Blindly trying
to pciResetDevice&  pciReattachDevice on the device and getting
an error is just redundant.
---
  src/qemu/qemu_hostdev.c |    4 +++-
  1 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/src/qemu/qemu_hostdev.c b/src/qemu/qemu_hostdev.c
index 9137388..60401f0 100644
--- a/src/qemu/qemu_hostdev.c
+++ b/src/qemu/qemu_hostdev.c
@@ -414,8 +414,10 @@ void qemuDomainReAttachHostdevDevices(struct qemud_driver *driver,
           */
          activeDev = pciDeviceListFind(driver->activePciHostdevs, dev);
          if (activeDev&&
-            STRNEQ_NULLABLE(name, pciDeviceGetUsedBy(activeDev)))
+            STRNEQ_NULLABLE(name, pciDeviceGetUsedBy(activeDev))) {
+            pciDeviceListSteal(pcidevs, dev);
              continue;
+        }

Awfully short patch compared to the commit message :)

Yeah, per the PCI device hotplug is awfull. :)

Sorry for taking so long to review, and:

ACK.


Thanks, pushed.

Regards,
Osier

--
libvir-list mailing list
libvir-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/libvir-list



[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]