aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xrc.d/init.d/netfs3
-rwxr-xr-xsysconfig/network-scripts/ifdown-eth22
2 files changed, 14 insertions, 11 deletions
diff --git a/rc.d/init.d/netfs b/rc.d/init.d/netfs
index e787da8b..0cc5a406 100755
--- a/rc.d/init.d/netfs
+++ b/rc.d/init.d/netfs
@@ -45,6 +45,9 @@ case "$1" in
[ -n "$NCPFSTAB" ] && action $"Mounting NCP filesystems: " mount -a -t ncpfs
[ -n "$NETDEVFSTAB" ] &&
{
+ if [ -f /etc/mdadm.conf ]; then
+ mdadm -A -s
+ fi
if [ -f /etc/multipath.conf -a -x /sbin/multipath ]; then
modprobe dm-multipath >/dev/null 2>&1
/sbin/multipath -v 0
diff --git a/sysconfig/network-scripts/ifdown-eth b/sysconfig/network-scripts/ifdown-eth
index 3ebaff33..f5fb16f6 100755
--- a/sysconfig/network-scripts/ifdown-eth
+++ b/sysconfig/network-scripts/ifdown-eth
@@ -26,17 +26,6 @@ CONFIG=${1}
source_config
-if [ -n "${BRIDGE}" -a -x /usr/sbin/brctl ]; then
- /sbin/ip link set dev ${DEVICE} down
- /usr/sbin/brctl delif ${BRIDGE} ${DEVICE}
- # Upon removing a device from a bridge,
- # it's necessary to make radvd reload its config
- [ -r /var/run/radvd/radvd.pid ] && kill -HUP `cat /var/run/radvd/radvd.pid`
- if LC_ALL=C /usr/sbin/brctl show | LC_ALL=C grep -q "^${BRIDGE} .*can't get port info"; then
- /usr/sbin/brctl delbr ${BRIDGE}
- fi
-fi
-
. /etc/sysconfig/network
# Check to make sure the device is actually up
@@ -116,6 +105,17 @@ if [ -d "/sys/class/net/${REALDEVICE}" ]; then
fi
[ "$retcode" = "0" ] && retcode=$?
+if [ -n "${BRIDGE}" -a -x /usr/sbin/brctl ]; then
+ /sbin/ip link set dev ${DEVICE} down
+ /usr/sbin/brctl delif ${BRIDGE} ${DEVICE}
+ # Upon removing a device from a bridge,
+ # it's necessary to make radvd reload its config
+ [ -r /var/run/radvd/radvd.pid ] && kill -HUP `cat /var/run/radvd/radvd.pid`
+ if [ -d /sys/class/net/${BRIDGE}/brif ] && [ `ls -1 /sys/class/net/${BRIDGE}/brif | wc -l` -eq 0 ]; then
+ /usr/sbin/brctl delbr ${BRIDGE}
+ fi
+fi
+
# wait up to 5 seconds for device to actually come down...
waited=0
while ! check_device_down ${DEVICE} && [ "$waited" -lt 50 ] ; do