sysvinit: allow stack size configuration from rcS

Submitted by Ben Shelton on Aug. 4, 2014, 3:40 p.m. | Patch ID: 77199


Message ID
State Accepted
Commit 0b5db16929de7668174e74e428f3e4e90e76e1d8
Headers show

Commit Message

Ben Shelton Aug. 4, 2014, 3:40 p.m.
From: Scot Salmon <>

For certain swap/overcommit settings (e.g. when overcommit is disabled
on a real-time system), we need to limit the stack size used by
initscripts.  When the STACK_SIZE environment variable is set (usually
in /etc/default/rcS), ulimit the stack size to the value specified.

Make the stack size ulimit a soft limit, which allows the user to
increase the stack size where required without having to run the
respective application as root.

Signed-off-by: Scot Salmon <>
Signed-off-by: Gratian Crisan <>
Signed-off-by: Ben Shelton <>
Acked-by: Rich Tollerton <>
Acked-by: Brad Mouring <>
Acked-by: Bill Pittman <>
 meta/recipes-core/sysvinit/sysvinit/rc | 3 +++
 1 file changed, 3 insertions(+)

Patch hide | download patch | download mbox

diff --git a/meta/recipes-core/sysvinit/sysvinit/rc b/meta/recipes-core/sysvinit/sysvinit/rc
index 1f400d9..7ca41ae 100755
--- a/meta/recipes-core/sysvinit/sysvinit/rc
+++ b/meta/recipes-core/sysvinit/sysvinit/rc
@@ -65,6 +65,9 @@  startup() {
   # Set onlcr to avoid staircase effect.
   stty onlcr 0>&1
+  # Limit stack size for startup scripts
+  [ "$STACK_SIZE" == "" ] || ulimit -S -s $STACK_SIZE
   # Now find out what the current and what the previous runlevel are.