[pve-devel] [stable-3 common] Fix #908: cleanup OVS ports in tap_unplug
Wolfgang Bumiller
w.bumiller at proxmox.com
Tue Apr 12 16:03:50 CEST 2016
tap_unplug() is only called in hotplugging functions which
perform a tap_plug() afterwards, and and in qemu-server's
bridge-down script.
The OVS port cleanup for non-firewall ports was done only in
tap_plug(), which means that in the case when qemu exits and
the tap device disappears, the OVS port for it stays.
With this patch the cleanup happens in both tap_unplug() and
tap_plug() to avoid problems with upgrades on systems
where there have already been ports leaked.
---
data/PVE/Network.pm | 2 ++
1 file changed, 2 insertions(+)
diff --git a/data/PVE/Network.pm b/data/PVE/Network.pm
index eda3700..f0d76f1 100644
--- a/data/PVE/Network.pm
+++ b/data/PVE/Network.pm
@@ -259,6 +259,8 @@ sub tap_unplug {
}
&$cleanup_firewall_bridge($iface);
+ #cleanup old port config from any openvswitch bridge
+ eval {run_command("/usr/bin/ovs-vsctl del-port $iface", outfunc => sub {}, errfunc => sub {}) };
}
sub copy_bridge_config {
--
2.1.4
More information about the pve-devel
mailing list