References: bsc#1172356 The bug is that virt-manager reports a failure when in fact the host and guest have added the network interface. The Xen scripts are failing with an error when in fact that command is succeeding. The 'ip' commands seem to abort the script due to a 'set -e' in xen-script-common.sh with what appears to be an error condition. However, the command actually succeeds when checked from the host console or also by inserting a sleep before each ip command and executing it manually at the command line. This seems to be an artifact of using 'set -e' everywhere. Index: xen-4.15.0-testing/tools/hotplug/Linux/xen-network-common.sh =================================================================== --- xen-4.15.0-testing.orig/tools/hotplug/Linux/xen-network-common.sh +++ xen-4.15.0-testing/tools/hotplug/Linux/xen-network-common.sh @@ -90,7 +90,7 @@ _setup_bridge_port() { local virtual="$2" # take interface down ... - ip link set dev ${dev} down + (ip link set dev ${dev} down || true) if [ $virtual -ne 0 ] ; then # Initialise a dummy MAC address. We choose the numerically @@ -101,7 +101,7 @@ _setup_bridge_port() { fi # ... and configure it - ip address flush dev ${dev} + (ip address flush dev ${dev} || true) } setup_physical_bridge_port() { @@ -136,15 +136,15 @@ add_to_bridge () { if [ ! -e "/sys/class/net/${bridge}/brif/${dev}" ]; then log debug "adding $dev to bridge $bridge" if which brctl >&/dev/null; then - brctl addif ${bridge} ${dev} + (brctl addif ${bridge} ${dev} || true) else - ip link set ${dev} master ${bridge} + (ip link set ${dev} master ${bridge} || true) fi else log debug "$dev already on bridge $bridge" fi - ip link set dev ${dev} up + (ip link set dev ${dev} up || true) } remove_from_bridge () {