diff -Nru libvirt-0.9.8/debian/changelog libvirt-0.9.8/debian/changelog --- libvirt-0.9.8/debian/changelog 2012-03-02 15:51:09.000000000 +0100 +++ libvirt-0.9.8/debian/changelog 2012-03-07 15:10:12.000000000 +0100 @@ -1,3 +1,12 @@ +libvirt (0.9.8-2ubuntu12) precise; urgency=low + + [ Stefan Bader ] + * Never use type=ioemu for NIC definitions. It is not needed + and actually breaks the paravirt interface which always gets + created in parallel. + + -- Stefan Bader Wed, 07 Mar 2012 15:08:55 +0100 + libvirt (0.9.8-2ubuntu11) precise; urgency=low [ Serge Hallyn ] diff -Nru libvirt-0.9.8/debian/patches/series libvirt-0.9.8/debian/patches/series --- libvirt-0.9.8/debian/patches/series 2012-03-02 15:49:27.000000000 +0100 +++ libvirt-0.9.8/debian/patches/series 2012-03-07 14:55:49.000000000 +0100 @@ -26,3 +26,4 @@ ubuntu/xen_hypervisor-treat-missing-privcmd-file-as-temporary.patch ubuntu/dnsmasq-as-priv-user rewrite-lxc-controller-eof-handling-yet-again +ubuntu/xen-vif-ioemu-deprecated.patch diff -Nru libvirt-0.9.8/debian/patches/ubuntu/xen-vif-ioemu-deprecated.patch libvirt-0.9.8/debian/patches/ubuntu/xen-vif-ioemu-deprecated.patch --- libvirt-0.9.8/debian/patches/ubuntu/xen-vif-ioemu-deprecated.patch 1970-01-01 01:00:00.000000000 +0100 +++ libvirt-0.9.8/debian/patches/ubuntu/xen-vif-ioemu-deprecated.patch 2012-03-07 15:10:28.000000000 +0100 @@ -0,0 +1,41 @@ +UBUNTU: Suppress ioemu agrument even when model name given + +A strange bug in the xm stack will cause the paravirt interface +to have no MAC address when type=ioemu is used in the vif definition. +However for the default emulation and any other hw emulated NIC, +there will always be a paravirtualized NIC present. And the guest +will unplug the emulated interfaces when the platform device +is present. In short type=ioemu only can hurt, it never adds +anything that would not be done anyways. + +Signed-off-by: Stefan Bader +Index: libvirt-0.9.8/src/xenxs/xen_sxpr.c +=================================================================== +--- libvirt-0.9.8.orig/src/xenxs/xen_sxpr.c 2011-11-22 02:52:24.000000000 +0100 ++++ libvirt-0.9.8/src/xenxs/xen_sxpr.c 2012-03-07 15:03:01.460285542 +0100 +@@ -1873,7 +1873,9 @@ + } + else { + virBufferEscapeSexpr(buf, "(model '%s')", def->model); +- virBufferAddLit(buf, "(type ioemu)"); ++ /* See above. Also needed when model is specified. */ ++ if (xendConfigVersion <= XEND_CONFIG_MAX_VERS_NET_TYPE_IOEMU) ++ virBufferAddLit(buf, "(type ioemu)"); + } + + if (!isAttach) +Index: libvirt-0.9.8/src/xenxs/xen_xm.c +=================================================================== +--- libvirt-0.9.8.orig/src/xenxs/xen_xm.c 2011-11-22 02:52:24.000000000 +0100 ++++ libvirt-0.9.8/src/xenxs/xen_xm.c 2012-03-07 15:03:49.872285557 +0100 +@@ -1335,7 +1335,9 @@ + } + else { + virBufferAsprintf(&buf, ",model=%s", net->model); +- virBufferAddLit(&buf, ",type=ioemu"); ++ /* See above. Also needed if model is specified. */ ++ if (xendConfigVersion <= XEND_CONFIG_MAX_VERS_NET_TYPE_IOEMU) ++ virBufferAddLit(&buf, ",type=ioemu"); + } + + if (net->ifname)