summaryrefslogtreecommitdiff
path: root/package/base-files/default/etc/preinit
blob: ff9bb4b10a7930e4d3b72d1be5343b3d46e6a595 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#!/bin/sh
. /etc/nvram.sh
export PATH=/bin:/sbin:/usr/bin:/usr/sbin
mount none /proc -t proc
insmod diag
echo 0x01 > /proc/sys/diag
sleep 1
if [ ! -f /proc/sys/reset ] || [ $(cat /proc/sys/reset) = 1 -o "$(nvram get failsafe)" = 1 ]; then
	export FAILSAFE=true
	[ "$(nvram get boot_wait)" != "on" ] && {
		nvram set boot_wait=on
		nvram commit
	}
	while :; do { echo $(((X=(X+1)%8)%2)) > /proc/sys/diag; sleep $((X==0)); } done &
fi

mount_root ${FAILSAFE:+failsafe}

exec /sbin/init