aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJo-Philipp Wich <jow@openwrt.org>2010-11-06 23:49:11 +0000
committerJo-Philipp Wich <jow@openwrt.org>2010-11-06 23:49:11 +0000
commita5fa9a2647abb068b44128163b3a966c6df094df (patch)
tree005183860aa36146bd11579254dca07dc60d5172
parent73d6e3b1817b309b3bfedfd560e5b373c43d5b6e (diff)
downloadupstream-a5fa9a2647abb068b44128163b3a966c6df094df.tar.gz
upstream-a5fa9a2647abb068b44128163b3a966c6df094df.tar.bz2
upstream-a5fa9a2647abb068b44128163b3a966c6df094df.zip
[toolchain] uClibc: fix errno access in pthreads (#8166, #8177)
Reading errno within pthreads always resulted in 0 breaking various programs like transmission and collectd. This patch is not 100% thread safe but it brings back threading into a usable state for now. git-svn-id: svn://svn.openwrt.org/openwrt/trunk@23905 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rw-r--r--toolchain/uClibc/patches-0.9.31/904-pthread_errno_fix.patch18
1 files changed, 18 insertions, 0 deletions
diff --git a/toolchain/uClibc/patches-0.9.31/904-pthread_errno_fix.patch b/toolchain/uClibc/patches-0.9.31/904-pthread_errno_fix.patch
new file mode 100644
index 0000000000..543750c813
--- /dev/null
+++ b/toolchain/uClibc/patches-0.9.31/904-pthread_errno_fix.patch
@@ -0,0 +1,18 @@
+--- a/libpthread/linuxthreads.old/errno.c
++++ b/libpthread/linuxthreads.old/errno.c
+@@ -22,6 +22,7 @@
+ #include "internals.h"
+ #include <stdio.h>
+
++libpthread_hidden_proto(__errno_location)
+ int *
+ __errno_location (void)
+ {
+@@ -29,6 +30,7 @@ __errno_location (void)
+ return THREAD_GETMEM (self, p_errnop);
+ }
+
++libpthread_hidden_proto(__h_errno_location)
+ int *
+ __h_errno_location (void)
+ {