aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFlorian Fainelli <florian@openwrt.org>2010-04-13 19:57:25 +0000
committerFlorian Fainelli <florian@openwrt.org>2010-04-13 19:57:25 +0000
commit8268c31d89aea80d72752e4a5e524aedd44533b1 (patch)
treed29724a28805383dea71be8d6e71ac08bf71cf4d
parent93c328b6eee4d5f30576b610469420fe38e2e51b (diff)
downloadupstream-8268c31d89aea80d72752e4a5e524aedd44533b1.tar.gz
upstream-8268c31d89aea80d72752e4a5e524aedd44533b1.tar.bz2
upstream-8268c31d89aea80d72752e4a5e524aedd44533b1.zip
[package] option to allow boot to run to completion before starting shell
Setting the system variable "foreground" to yes causes the system to run the init scripts in series and wait for completion. This is useful if (a) you don't want the user getting into the console until the system is initialized, or (b) you have things going on in your scripts that require strict ordering (and no possible race conditions). Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@20841 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rwxr-xr-xpackage/base-files/files/etc/init.d/rcS7
1 files changed, 6 insertions, 1 deletions
diff --git a/package/base-files/files/etc/init.d/rcS b/package/base-files/files/etc/init.d/rcS
index c135024bea..ea40d68bed 100755
--- a/package/base-files/files/etc/init.d/rcS
+++ b/package/base-files/files/etc/init.d/rcS
@@ -10,7 +10,12 @@ run_scripts() {
LOGGER="cat"
[ -x /usr/bin/logger ] && LOGGER="logger -s -p 6 -t sysinit"
-if [ "$1" = "S" ]; then
+. /etc/functions.sh
+
+config_load system
+config_get_bool foreground system foreground no
+
+if [ "$1" = "S" -a "$foreground" != "yes" ]; then
run_scripts "$1" "$2" &
else
run_scripts "$1" "$2"