diff options
author | Denys Vlasenko <vda.linux@googlemail.com> | 2019-04-05 18:38:12 +0200 |
---|---|---|
committer | Denys Vlasenko <vda.linux@googlemail.com> | 2019-04-05 18:41:48 +0200 |
commit | 1e474d3d933bfe56a7f4eab17cf58cc6dd6a881d (patch) | |
tree | 8a0b3f371ef15d5f16c74ec3020b6dd8a209efeb | |
parent | 43d09e79db91110e7ca09610efd0b62fce453b47 (diff) | |
download | busybox-1e474d3d933bfe56a7f4eab17cf58cc6dd6a881d.tar.gz |
service examples: if iface do not exist, retry upping it
I've had a case of a machine where eth0 was appearing a bit later
after the boot, and appearing _downed_. ifplugd then fails to detect
"link up". Thus, depending on how service startup
("ip link set dev eth0 up") races with driver initialization,
ethernet randomly fails to initialize on boot.
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
-rwxr-xr-x | examples/var_service/dhcp_if/run | 4 | ||||
-rwxr-xr-x | examples/var_service/dhcpd_if/run | 4 | ||||
-rwxr-xr-x | examples/var_service/ifplugd_if/run | 2 | ||||
-rwxr-xr-x | examples/var_service/supplicant_if/run | 2 | ||||
-rwxr-xr-x | examples/var_service/zcip_if/run | 4 |
5 files changed, 8 insertions, 8 deletions
diff --git a/examples/var_service/dhcp_if/run b/examples/var_service/dhcp_if/run index aec79e027..d8f343586 100755 --- a/examples/var_service/dhcp_if/run +++ b/examples/var_service/dhcp_if/run @@ -8,9 +8,9 @@ pwd="$PWD" if="${PWD##*/dhcp_}" echo "* Upping iface $if" -ip link set dev "$if" up +ip link set dev "$if" up || { sleep 5; exit; } -echo "* Starting udhcpc" +echo "* Starting udhcpc on $if [$$]" exec \ env - PATH="$PATH" \ softlimit \ diff --git a/examples/var_service/dhcpd_if/run b/examples/var_service/dhcpd_if/run index a603bdc71..e3d1b00f4 100755 --- a/examples/var_service/dhcpd_if/run +++ b/examples/var_service/dhcpd_if/run @@ -8,12 +8,12 @@ pwd="$PWD" if="${PWD##*/dhcpd_}" echo "* Upping iface $if" -ip link set dev $if up +ip link set dev $if up || { sleep 5; exit; } >>udhcpd.leases sed 's/^interface.*$/interface '"$if/" -i udhcpd.conf -echo "* Starting udhcpd" +echo "* Starting udhcpd on $if [$$]" exec \ env - PATH="$PATH" \ softlimit \ diff --git a/examples/var_service/ifplugd_if/run b/examples/var_service/ifplugd_if/run index 5c662f298..e7816619d 100755 --- a/examples/var_service/ifplugd_if/run +++ b/examples/var_service/ifplugd_if/run @@ -9,7 +9,7 @@ pwd="$PWD" if="${PWD##*/ifplugd_}" echo "* Upping iface $if" -ip link set dev "$if" up +ip link set dev "$if" up || { sleep 5; exit; } echo "* Starting ifplugd on $if [$$]" exec \ diff --git a/examples/var_service/supplicant_if/run b/examples/var_service/supplicant_if/run index 279d18af5..bc16fb606 100755 --- a/examples/var_service/supplicant_if/run +++ b/examples/var_service/supplicant_if/run @@ -14,7 +14,7 @@ ip link set dev "$if" up || { sleep 5; exit; } ##echo "* Powersave disable on $if" ##iw dev "$if" set power_save off -echo "* Starting wpa_supplicant" +echo "* Starting wpa_supplicant on $if [$$]" exec \ env - PATH="$PATH" \ softlimit \ diff --git a/examples/var_service/zcip_if/run b/examples/var_service/zcip_if/run index 94a875465..699823246 100755 --- a/examples/var_service/zcip_if/run +++ b/examples/var_service/zcip_if/run @@ -8,9 +8,9 @@ pwd="$PWD" if="${PWD##*/zcip_}" echo "* Upping iface $if" -ip link set dev "$if" up +ip link set dev "$if" up || { sleep 5; exit; } -echo "* Starting zcip" +echo "* Starting zcip on $if [$$]" exec \ env - PATH="$PATH" \ softlimit \ |