rhel: Define rundir for older distros.
[cascardo/ovs.git] / rhel / etc_sysconfig_network-scripts_ifup-ovs
index 4e7d4d1..478c5c3 100755 (executable)
@@ -117,7 +117,11 @@ case "$TYPE" in
        OVSPort)
                ifup_ovs_bridge
                ${OTHERSCRIPT} ${CONFIG} ${2}
-               ovs-vsctl -t ${TIMEOUT} -- --may-exist add-port "$OVS_BRIDGE" "$DEVICE" $OVS_OPTIONS ${OVS_EXTRA+-- $OVS_EXTRA}
+               # The port might be already in the database but not yet
+               # in the datapath.  So, remove the stale interface first.
+               ovs-vsctl -t ${TIMEOUT} \
+                       -- --if-exists del-port "$OVS_BRIDGE" "$DEVICE" \
+                       -- add-port "$OVS_BRIDGE" "$DEVICE" $OVS_OPTIONS ${OVS_EXTRA+-- $OVS_EXTRA}
                OVSINTF=${DEVICE} /sbin/ifup "$OVS_BRIDGE"
                ;;
        OVSIntPort)
@@ -141,7 +145,6 @@ case "$TYPE" in
        OVSTunnel)
                ifup_ovs_bridge
                ovs-vsctl -t ${TIMEOUT} -- --may-exist add-port "$OVS_BRIDGE" "$DEVICE" $OVS_OPTIONS -- set Interface "$DEVICE" type=$OVS_TUNNEL_TYPE $OVS_TUNNEL_OPTIONS ${OVS_EXTRA+-- $OVS_EXTRA}
-               ${OTHERSCRIPT} ${CONFIG} ${2}
                ;;
        OVSPatchPort)
                ifup_ovs_bridge