On Thu, Sep 11, 2014 at 05:27:12PM +0200, Ján Tomko wrote:
Pass the user-specified tun path down when creating tap device
when called from the qemu driver.
Also honor the vhost device path specified by user.
---
src/bhyve/bhyve_command.c | 2 +-
src/bhyve/bhyve_process.c | 2 +-
src/network/bridge_driver.c | 6 +++---
src/qemu/qemu_command.c | 22 +++++++++++++++-------
src/qemu/qemu_process.c | 2 +-
src/uml/uml_conf.c | 2 +-
src/uml/uml_driver.c | 3 ++-
src/util/virnetdevtap.c | 37 +++++++++++++++++++++++++++----------
src/util/virnetdevtap.h | 5 ++++-
9 files changed, 55 insertions(+), 26 deletions(-)
[...]
diff --git a/src/qemu/qemu_process.c b/src/qemu/qemu_process.c
index ac40ea8..9ab9521 100644
--- a/src/qemu/qemu_process.c
+++ b/src/qemu/qemu_process.c
@@ -4766,7 +4766,7 @@ void qemuProcessStop(virQEMUDriverPtr driver,
case VIR_DOMAIN_NET_TYPE_NETWORK:
#ifdef VIR_NETDEV_TAP_REQUIRE_MANUAL_CLEANUP
if (!(vport && vport->virtPortType ==
VIR_NETDEV_VPORT_PROFILE_OPENVSWITCH))
- ignore_value(virNetDevTapDelete(net->ifname));
+ ignore_value(virNetDevTapDelete(net->ifname, net->backend.tun));
s/tun/tap/
#endif
break;
}
diff --git a/src/uml/uml_conf.c b/src/uml/uml_conf.c
index 41ce03c..407a79b 100644
--- a/src/uml/uml_conf.c
+++ b/src/uml/uml_conf.c
@@ -124,7 +124,7 @@ umlConnectTapDevice(virConnectPtr conn,
}
if (virNetDevTapCreateInBridgePort(bridge, &net->ifname, &net->mac,
- vm->uuid, &tapfd, 1,
+ vm->uuid, net->backend.tun, &tapfd, 1,
Same here.
virDomainNetGetActualVirtPortProfile(net),
virDomainNetGetActualVlan(net),
VIR_NETDEV_TAP_CREATE_IFUP |
diff --git a/src/uml/uml_driver.c b/src/uml/uml_driver.c
index 5bede07..9404005 100644
--- a/src/uml/uml_driver.c
+++ b/src/uml/uml_driver.c
@@ -1032,7 +1032,8 @@ static void umlCleanupTapDevices(virDomainObjPtr vm)
def->type != VIR_DOMAIN_NET_TYPE_NETWORK)
continue;
- ignore_value(virNetDevTapDelete(def->ifname));
+ ignore_value(virNetDevTapDelete(def->ifname,
+ def->backend.tun));
And here. Although I'd name it tun in the first place :)
ACK series with these fixed.
Martin