From 1d5d64e647517cdd5bc8d0bb8c408babfec51d79 Mon Sep 17 00:00:00 2001 From: nbd Date: Mon, 25 Jun 2007 08:32:25 +0000 Subject: fix failsafe on broadcom, send netlink events in diag when running linux 2.6 git-svn-id: svn://svn.openwrt.org/openwrt/trunk@7722 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- package/base-files/files/etc/hotplug2-init.rules | 9 ++++++++ package/base-files/files/etc/init.d/boot | 2 +- package/base-files/files/etc/preinit | 26 +++++++++++------------- 3 files changed, 22 insertions(+), 15 deletions(-) create mode 100644 package/base-files/files/etc/hotplug2-init.rules (limited to 'package/base-files') diff --git a/package/base-files/files/etc/hotplug2-init.rules b/package/base-files/files/etc/hotplug2-init.rules new file mode 100644 index 000000000..6efd54668 --- /dev/null +++ b/package/base-files/files/etc/hotplug2-init.rules @@ -0,0 +1,9 @@ +DEVICENAME ~~ (tun|tap[0-9]) { + makedev /dev/net/%DEVICENAME% 0644 + next +} + +DEVPATH is set { + makedev /dev/%DEVICENAME% 0644 +} + diff --git a/package/base-files/files/etc/init.d/boot b/package/base-files/files/etc/init.d/boot index 02519fbbc..9990dc782 100755 --- a/package/base-files/files/etc/init.d/boot +++ b/package/base-files/files/etc/init.d/boot @@ -40,7 +40,7 @@ start() { touch /var/log/lastlog ln -s /tmp/resolv.conf.auto /tmp/resolv.conf [ "$FAILSAFE" = "true" ] && touch /tmp/.failsafe - + /sbin/hotplug2 --persistent --max-children 1 & # the coldplugging of network interfaces needs to happen later, so we do it manually here diff --git a/package/base-files/files/etc/preinit b/package/base-files/files/etc/preinit index 85dbf314d..e5fdd43ae 100755 --- a/package/base-files/files/etc/preinit +++ b/package/base-files/files/etc/preinit @@ -23,7 +23,8 @@ else mount -t tmpfs tmpfs /dev -o size=512K mknod /dev/console c 5 1 mkdir /dev/shm - /sbin/hotplug2 --no-persistent --coldplug --set-rules-file /etc/hotplug2-init.rules + /sbin/hotplug2 --coldplug --set-rules-file /etc/hotplug2-init.rules + /sbin/hotplug2 --no-coldplug --persistent --set-rules-file /etc/hotplug2-init.rules & M0=/dev/ptmx M1=/dev/ptmx HOTPLUG= @@ -42,19 +43,16 @@ dd if=/dev/console of=/dev/null bs=1 count=0 >/dev/null 2>/dev/null && { exec <$M0 >$M1 2>&0 -{ - echo "- preinit -" - [ -e /etc/preinit.arch ] && . /etc/preinit.arch - set_state preinit +echo "- preinit -" - echo "$HOTPLUG" > /proc/sys/kernel/hotplug - - eval ${FAILSAFE:+failsafe} - lock -w /tmp/.failsafe - - mount_root - - echo "- init -" -} | tee /tmp/preinit.log +[ -e /etc/preinit.arch ] && . /etc/preinit.arch +set_state preinit +echo "$HOTPLUG" > /proc/sys/kernel/hotplug +eval ${FAILSAFE:+failsafe} +lock -w /tmp/.failsafe +mount_root +echo "- init -" + +killall hotplug2 exec /sbin/init -- cgit v1.2.3