diff options
author | Felix Fietkau <nbd@openwrt.org> | 2013-11-18 13:32:06 +0000 |
---|---|---|
committer | Felix Fietkau <nbd@openwrt.org> | 2013-11-18 13:32:06 +0000 |
commit | edc8ac624641c23c0c081c33dac6ed068c39ca72 (patch) | |
tree | da05a5c4f8f1f52bb6bcc231bc3539fc1bc2d5a2 /toolchain/uClibc | |
parent | d38c28b58c57ac41d5e81db7d501cd3277ce2f59 (diff) | |
download | master-31e0f0ae-edc8ac624641c23c0c081c33dac6ed068c39ca72.tar.gz master-31e0f0ae-edc8ac624641c23c0c081c33dac6ed068c39ca72.tar.bz2 master-31e0f0ae-edc8ac624641c23c0c081c33dac6ed068c39ca72.zip |
uClibc: Deactivate oversized thread stack cache
A small system like the common home router doesn't have 40 MiB per process for
a dirty stack cache. This can easily lead to an overbooking OOM problem and
caused a lot of hangs+reboots on 32 MiB systems running nodogsplash.
Not using a stack cache can increase the time to spawn new threads. This is
hopefully no problem for system not running a lot of parallel computations.
Signed-off-by: Sven Eckelmann <sven@open-mesh.com>
SVN-Revision: 38851
Diffstat (limited to 'toolchain/uClibc')
-rw-r--r-- | toolchain/uClibc/patches-0.9.33.2/990-no-stack-cache.patch | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/toolchain/uClibc/patches-0.9.33.2/990-no-stack-cache.patch b/toolchain/uClibc/patches-0.9.33.2/990-no-stack-cache.patch new file mode 100644 index 0000000000..8f0b511ea6 --- /dev/null +++ b/toolchain/uClibc/patches-0.9.33.2/990-no-stack-cache.patch @@ -0,0 +1,11 @@ +--- a/libpthread/nptl/allocatestack.c ++++ b/libpthread/nptl/allocatestack.c +@@ -100,7 +100,7 @@ + /* Cache handling for not-yet free stacks. */ + + /* Maximum size in kB of cache. */ +-static size_t stack_cache_maxsize = 40 * 1024 * 1024; /* 40MiBi by default. */ ++static size_t stack_cache_maxsize = 0; /* embedded systems don't have enough ram for dirty stack caches */ + static size_t stack_cache_actsize; + + /* Mutex protecting this variable. */ |