[libvirt] [PATCH] qemu: fix cleanup of bridge during failure of qemuDomainAttachNetDevice
Laine Stump
laine at laine.org
Sat Feb 25 23:40:07 UTC 2012
From: Laine Stump <laine at redhat.com>
In qemuDomainAttachNetDevice, the guest's tap interface has only been
attached to the bridge if iface_connected is true. It's possible for
an error to occur prior to that happening, and previously we would
attempt to remove the tap interface from the bridge even if it hadn't
been attached.
---
src/qemu/qemu_hotplug.c | 11 ++++++-----
1 files changed, 6 insertions(+), 5 deletions(-)
diff --git a/src/qemu/qemu_hotplug.c b/src/qemu/qemu_hotplug.c
index e90ea6c..375b822 100644
--- a/src/qemu/qemu_hotplug.c
+++ b/src/qemu/qemu_hotplug.c
@@ -837,13 +837,14 @@ cleanup:
net->info.addr.pci.slot) < 0)
VIR_WARN("Unable to release PCI address on NIC");
- if (iface_connected)
+ if (iface_connected) {
virDomainConfNWFilterTeardown(net);
- vport = virDomainNetGetActualVirtPortProfile(net);
- if (vport && vport->virtPortType == VIR_NETDEV_VPORT_PROFILE_OPENVSWITCH)
- ignore_value(virNetDevOpenvswitchRemovePort(
- virDomainNetGetActualBridgeName(net), net->ifname));
+ vport = virDomainNetGetActualVirtPortProfile(net);
+ if (vport && vport->virtPortType == VIR_NETDEV_VPORT_PROFILE_OPENVSWITCH)
+ ignore_value(virNetDevOpenvswitchRemovePort(
+ virDomainNetGetActualBridgeName(net), net->ifname));
+ }
networkReleaseActualDevice(net);
}
--
1.7.7.6
More information about the libvir-list
mailing list