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
This commit is contained in:
parent
d38c28b58c
commit
edc8ac6246
1 changed files with 11 additions and 0 deletions
11
toolchain/uClibc/patches-0.9.33.2/990-no-stack-cache.patch
Normal file
11
toolchain/uClibc/patches-0.9.33.2/990-no-stack-cache.patch
Normal file
|
@ -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. */
|
Loading…
Reference in a new issue