aboutsummaryrefslogtreecommitdiffstats
path: root/toolchain/uClibc/patches-0.9.31/000-initialize_stdio_locking.patch
diff options
context:
space:
mode:
authorAlexandros C. Couloumbis <alex@ozo.com>2010-11-18 14:58:37 +0000
committerAlexandros C. Couloumbis <alex@ozo.com>2010-11-18 14:58:37 +0000
commit2c24f3ae2f026b5dba248985f0efc80cadcf43f6 (patch)
tree36f98cb56900b7d8514ec4b0a198abe243dc1f90 /toolchain/uClibc/patches-0.9.31/000-initialize_stdio_locking.patch
parent123048f3caaa6f0b3b7d49cb018516926f97ed23 (diff)
downloadmaster-187ad058-2c24f3ae2f026b5dba248985f0efc80cadcf43f6.tar.gz
master-187ad058-2c24f3ae2f026b5dba248985f0efc80cadcf43f6.tar.bz2
master-187ad058-2c24f3ae2f026b5dba248985f0efc80cadcf43f6.zip
toolchain/uClibc: push some upstream patches for uClibc-0.9.31. should resolve isses of #8269
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@24029 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'toolchain/uClibc/patches-0.9.31/000-initialize_stdio_locking.patch')
-rw-r--r--toolchain/uClibc/patches-0.9.31/000-initialize_stdio_locking.patch33
1 files changed, 33 insertions, 0 deletions
diff --git a/toolchain/uClibc/patches-0.9.31/000-initialize_stdio_locking.patch b/toolchain/uClibc/patches-0.9.31/000-initialize_stdio_locking.patch
new file mode 100644
index 0000000000..6a32e5d7c0
--- /dev/null
+++ b/toolchain/uClibc/patches-0.9.31/000-initialize_stdio_locking.patch
@@ -0,0 +1,33 @@
+From d4ede2b0a4727c1f5236dd9308f09cbf7a39761a Mon Sep 17 00:00:00 2001
+From: Timo Teräs <timo.teras@iki.fi>
+Date: Tue, 13 Apr 2010 06:38:59 +0000
+Subject: linuxthreads.new: initialize stdio locking
+
+uClibc requires the threading library to enable locking for
+stdio, or the locking is not done at all.
+
+Signed-off-by: Timo Teräs <timo.teras@iki.fi>
+Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
+---
+diff --git a/libpthread/linuxthreads/pthread.c b/libpthread/linuxthreads/pthread.c
+index 6ae9a10..614cad1 100644
+--- a/libpthread/linuxthreads/pthread.c
++++ b/libpthread/linuxthreads/pthread.c
+@@ -613,6 +613,17 @@ static void pthread_initialize(void)
+ #ifdef USE_TLS
+ GL(dl_init_static_tls) = &__pthread_init_static_tls;
+ #endif
++
++ /* uClibc-specific stdio initialization for threads. */
++ {
++ FILE *fp;
++ _stdio_user_locking = 0; /* 2 if threading not initialized */
++ for (fp = _stdio_openlist; fp != NULL; fp = fp->__nextopen) {
++ if (fp->__user_locking != 1) {
++ fp->__user_locking = 0;
++ }
++ }
++ }
+ }
+
+ void __pthread_initialize(void)