network: prevent unnecessary interface down/up cycles if no mac address change is...
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Mon, 1 Jun 2009 18:09:05 +0000 (18:09 +0000)
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Mon, 1 Jun 2009 18:09:05 +0000 (18:09 +0000)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@16269 3c298f89-4303-0410-b956-a3cf2f4a3e73

package/base-files/files/lib/network/config.sh

index 808463df52ca0ab628e1b5a3459c07a78093c71f..cefd559567256375028d9ac356bad73a49680dfd 100755 (executable)
@@ -246,9 +246,10 @@ setup_interface() {
        # Interface settings
        config_get mtu "$config" mtu
        config_get macaddr "$config" macaddr
-       grep "$iface:" /proc/net/dev > /dev/null && \
-               $DEBUG ifconfig "$iface" down && \
+       grep "$iface:" /proc/net/dev > /dev/null && {
+               [ -n "$macaddr" ] && $DEBUG ifconfig "$iface" down
                $DEBUG ifconfig "$iface" ${macaddr:+hw ether "$macaddr"} ${mtu:+mtu $mtu} up
+       }
        set_interface_ifname "$config" "$iface"
 
        pidfile="/var/run/$iface.pid"