aboutsummaryrefslogtreecommitdiffstats
path: root/package/base-files
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 /package/base-files
parent93c328b6eee4d5f30576b610469420fe38e2e51b (diff)
downloadmaster-187ad058-8268c31d89aea80d72752e4a5e524aedd44533b1.tar.gz
master-187ad058-8268c31d89aea80d72752e4a5e524aedd44533b1.tar.bz2
master-187ad058-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
Diffstat (limited to 'package/base-files')
-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"