diff options
author | Baptiste Daroussin <bapt@FreeBSD.org> | 2021-03-09 13:25:32 +0000 |
---|---|---|
committer | Baptiste Daroussin <bapt@FreeBSD.org> | 2021-03-09 13:26:07 +0000 |
commit | f61831d2e8bd44b6568b00d538e738c25190bb96 (patch) | |
tree | 5261c8169fe30d9b91d01b0f0a324ae9acd91964 | |
parent | b3dac3913dc90fbc6f909ee5c4a876097cd90791 (diff) | |
download | src-f61831d2e8bd44b6568b00d538e738c25190bb96.tar.gz src-f61831d2e8bd44b6568b00d538e738c25190bb96.zip |
Revert "rc: implement parallel boot"
This is not ready yet for prime time
This reverts commit 763db58932874bb47fc6f9322ab81cc947f80991.
This reverts commit f1ab799927c8e93e8f58e5039f287a2ca45675ec.
This reverts commit 6e822e99570fdf4c564be04840a054bccc070222.
This reverts commit 77e1ccbee3ed6c837929e4e232fd07f95bfc8294.
-rw-r--r-- | libexec/rc/rc | 51 |
1 files changed, 15 insertions, 36 deletions
diff --git a/libexec/rc/rc b/libexec/rc/rc index 2cb840e68919..35db4a850516 100644 --- a/libexec/rc/rc +++ b/libexec/rc/rc @@ -91,36 +91,22 @@ if ! [ -e ${firstboot_sentinel} ]; then skip_firstboot="-s firstboot" fi -# rc_parallel_start default is "NO" -rc_parallel_start=${rc_parallel_start:-NO} -_rc_parallel='' -# enable rcorder -p if /etc/rc.conf rc_parallel_start is "YES" -checkyesno rc_parallel_start && _rc_parallel='-p' - # Do a first pass to get everything up to $early_late_divider so that # we can do a second pass that includes $local_startup directories # -files=`rcorder ${skip} ${skip_firstboot} ${_rc_parallel} /etc/rc.d/* 2>/dev/null` +files=`rcorder ${skip} ${skip_firstboot} /etc/rc.d/* 2>/dev/null` _rc_elem_done=' ' -oldifs="$IFS" -IFS=$'\n' -for _rc_group in ${files}; do - IFS="$oldifs" - for _rc_elem in ${_rc_group}; do - run_rc_script ${_rc_elem} ${_boot} & - _rc_elem_done="${_rc_elem_done}${_rc_elem} " - - case "$_rc_elem" in - */${early_late_divider}) break ;; - esac - done - wait - IFS=$'\n' +for _rc_elem in ${files}; do + run_rc_script ${_rc_elem} ${_boot} + _rc_elem_done="${_rc_elem_done}${_rc_elem} " + + case "$_rc_elem" in + */${early_late_divider}) break ;; + esac done unset files local_rc -IFS="$oldifs" # Now that disks are mounted, for each dir in $local_startup # search for init scripts that use the new rc.d semantics. @@ -136,21 +122,14 @@ if [ -e ${firstboot_sentinel} ]; then skip_firstboot="" fi -files=`rcorder ${skip} ${skip_firstboot} /etc/rc.d/* ${local_rc} ${_rc_parallel} 2>/dev/null` -IFS=$'\n' -for _rc_group in ${files}; do - IFS="$oldifs" - for _rc_elem in ${_rc_group}; do - case "$_rc_elem_done" in - *" $_rc_elem "*) continue ;; - esac - - run_rc_script ${_rc_elem} ${_boot} & - done - wait - IFS=$'\n' +files=`rcorder ${skip} ${skip_firstboot} /etc/rc.d/* ${local_rc} 2>/dev/null` +for _rc_elem in ${files}; do + case "$_rc_elem_done" in + *" $_rc_elem "*) continue ;; + esac + + run_rc_script ${_rc_elem} ${_boot} done -IFS="$oldifs" # Remove the firstboot sentinel, and reboot if it was requested. # Be a bit paranoid about removing it to handle the common failure |