Author: sthibault Date: 2014-05-29 23:08:34 +0000 (Thu, 29 May 2014) New Revision: 6117
Added: glibc-package/branches/eglibc-2.19/debian/patches/hurd-i386/tg-gai_misc.diff glibc-package/branches/eglibc-2.19/debian/patches/hurd-i386/tg-posix_thread.diff Removed: glibc-package/branches/eglibc-2.19/debian/patches/hurd-i386/unsubmitted-pthread_posix-option.diff Modified: glibc-package/branches/eglibc-2.19/debian/changelog glibc-package/branches/eglibc-2.19/debian/patches/series Log: hurd-i386/unsubmitted-pthread_posix-option.diff: Split patches into... ... hurd-i386/tg-{posix_thread,gai_misc}.diff. Modified: glibc-package/branches/eglibc-2.19/debian/changelog =================================================================== --- glibc-package/branches/eglibc-2.19/debian/changelog 2014-05-29 12:03:54 UTC (rev 6116) +++ glibc-package/branches/eglibc-2.19/debian/changelog 2014-05-29 23:08:34 UTC (rev 6117) @@ -3,6 +3,10 @@ [ Aurelien Jarno ] * debian/control.in/main: remove outdated Build-Depends on bzip2. + [ Samuel Thibault ] + * hurd-i386/unsubmitted-pthread_posix-option.diff: Split patches into... + * ... hurd-i386/tg-{posix_thread,gai_misc}.diff. + -- Aurelien Jarno <aure...@debian.org> Sun, 25 May 2014 18:37:40 +0200 eglibc (2.19-0experimental0) experimental; urgency=medium Added: glibc-package/branches/eglibc-2.19/debian/patches/hurd-i386/tg-gai_misc.diff =================================================================== --- glibc-package/branches/eglibc-2.19/debian/patches/hurd-i386/tg-gai_misc.diff (rev 0) +++ glibc-package/branches/eglibc-2.19/debian/patches/hurd-i386/tg-gai_misc.diff 2014-05-29 23:08:34 UTC (rev 6117) @@ -0,0 +1,63 @@ +From: Samuel Thibault <samuel.thiba...@ens-lyon.org> +Subject: [PATCH] t/gai_misc + +Add a hurd version of threaded gai_misc.h + +Signed-off-by: Samuel Thibault <samuel.thiba...@ens-lyon.org> + +--- + sysdeps/mach/hurd/gai_misc.h | 44 ++++++++++++++++++++++++++++++++++++++++++++ + 1 file changed, 44 insertions(+) + +diff --git a/sysdeps/mach/hurd/gai_misc.h b/sysdeps/mach/hurd/gai_misc.h +new file mode 100644 +index 0000000..ee8117f +--- /dev/null ++++ b/sysdeps/mach/hurd/gai_misc.h +@@ -0,0 +1,44 @@ ++#include <signal.h> ++#include <pthread.h> ++ ++#define gai_start_notify_thread __gai_start_notify_thread ++#define gai_create_helper_thread __gai_create_helper_thread ++ ++extern inline void ++__gai_start_notify_thread (void) ++{ ++ sigset_t ss; ++ sigemptyset (&ss); ++ sigprocmask(SIG_SETMASK, &ss, NULL); ++} ++ ++extern inline int ++__gai_create_helper_thread (pthread_t *threadp, void *(*tf) (void *), ++ void *arg) ++{ ++ pthread_attr_t attr; ++ ++ /* Make sure the thread is created detached. */ ++ pthread_attr_init (&attr); ++ pthread_attr_setdetachstate (&attr, PTHREAD_CREATE_DETACHED); ++ ++ /* The helper thread needs only very little resources. */ ++ (void) pthread_attr_setstacksize (&attr, 0x10000); ++ ++ /* Block all signals in the helper thread. To do this thoroughly we ++ temporarily have to block all signals here. */ ++ sigset_t ss; ++ sigset_t oss; ++ sigfillset (&ss); ++ sigprocmask(SIG_SETMASK, &ss, &oss); ++ ++ int ret = pthread_create (threadp, &attr, tf, arg); ++ ++ /* Restore the signal mask. */ ++ sigprocmask(SIG_SETMASK, &oss, NULL); ++ ++ (void) pthread_attr_destroy (&attr); ++ return ret; ++} ++ ++#include_next <gai_misc.h> +-- +tg: (9a079e2..) t/gai_misc (depends on: baseline) Added: glibc-package/branches/eglibc-2.19/debian/patches/hurd-i386/tg-posix_thread.diff =================================================================== --- glibc-package/branches/eglibc-2.19/debian/patches/hurd-i386/tg-posix_thread.diff (rev 0) +++ glibc-package/branches/eglibc-2.19/debian/patches/hurd-i386/tg-posix_thread.diff 2014-05-29 23:08:34 UTC (rev 6117) @@ -0,0 +1,111 @@ +From: Samuel Thibault <samuel.thiba...@ens-lyon.org> +Subject: [PATCH] t/posix_thread + +Declare that we have a libpthread. + +Signed-off-by: Samuel Thibault <samuel.thiba...@ens-lyon.org> + +--- + sysdeps/mach/hurd/Makefile | 4 ++++ + sysdeps/mach/hurd/bits/posix_opt.h | 40 +++++++++++++++++++++++++------------- + 2 files changed, 31 insertions(+), 13 deletions(-) + +diff --git a/sysdeps/mach/hurd/Makefile b/sysdeps/mach/hurd/Makefile +index 68aedb6..4a6ee36 100644 +--- a/sysdeps/mach/hurd/Makefile ++++ b/sysdeps/mach/hurd/Makefile +@@ -167,6 +167,10 @@ $(objpfx)librtld.map: $(rpcuserlibs:.so=_pic.a) + CFLAGS-dl-load.c = -DEXTERNAL_MAP_FROM_FD + endif + ++ifeq ($(subdir),posix) ++CFLAGS-confstr.c += -DLIBPTHREAD_VERSION='"libpthread 0.3"' ++endif ++ + # Override the generic Makeconfig values so we link against the RPC libs. + link-libc-static := -Wl,--start-group \ + $(patsubst %,$(common-objpfx)%.a,\ +diff --git a/sysdeps/mach/hurd/bits/posix_opt.h b/sysdeps/mach/hurd/bits/posix_opt.h +index 940e376..24ef55c 100644 +--- a/sysdeps/mach/hurd/bits/posix_opt.h ++++ b/sysdeps/mach/hurd/bits/posix_opt.h +@@ -71,24 +71,38 @@ + /* XPG4.2 shared memory is not supported. */ + #undef _XOPEN_SHM + +-/* We do not have the POSIX threads interface. */ +-#define _POSIX_THREADS -1 ++/* Tell we have POSIX threads. */ ++#define _POSIX_THREADS 200112L + + /* We have the reentrant functions described in POSIX. */ + #define _POSIX_REENTRANT_FUNCTIONS 1 + #define _POSIX_THREAD_SAFE_FUNCTIONS 200809L + +-/* These are all things that won't be supported when _POSIX_THREADS is not. */ ++/* We do not provide priority scheduling for threads. */ + #define _POSIX_THREAD_PRIORITY_SCHEDULING -1 +-#define _POSIX_THREAD_ATTR_STACKSIZE -1 +-#define _POSIX_THREAD_ATTR_STACKADDR -1 ++ ++/* We support user-defined stack sizes. */ ++#define _POSIX_THREAD_ATTR_STACKSIZE 200112L ++ ++/* We support user-defined stacks. */ ++#define _POSIX_THREAD_ATTR_STACKADDR 200112L ++ ++/* We do not support priority inheritence. */ + #define _POSIX_THREAD_PRIO_INHERIT -1 ++ ++/* We do not support priority protection. */ + #define _POSIX_THREAD_PRIO_PROTECT -1 ++ + #ifdef __USE_XOPEN2K8 ++/* We do not support priority inheritence for robust mutexes. */ + # define _POSIX_THREAD_ROBUST_PRIO_INHERIT -1 ++ ++/* We do not support priority protection for robust mutexes. */ + # define _POSIX_THREAD_ROBUST_PRIO_PROTECT -1 + #endif +-#define _POSIX_SEMAPHORES -1 ++ ++/* We support POSIX.1b semaphores. */ ++#define _POSIX_SEMAPHORES 200112L + + /* Real-time signals are not yet supported. */ + #define _POSIX_REALTIME_SIGNALS -1 +@@ -121,17 +135,17 @@ + /* GNU libc provides regular expression handling. */ + #define _POSIX_REGEXP 1 + +-/* Reader/Writer locks are not available. */ +-#define _POSIX_READER_WRITER_LOCKS -1 ++/* Reader/Writer locks are available. */ ++#define _POSIX_READER_WRITER_LOCKS 200112L + + /* We have a POSIX shell. */ + #define _POSIX_SHELL 1 + +-/* We cannot support the Timeouts option without _POSIX_THREADS. */ +-#define _POSIX_TIMEOUTS -1 ++/* We support the Timeouts option. */ ++#define _POSIX_TIMEOUTS 200112L + +-/* We do not support spinlocks. */ +-#define _POSIX_SPIN_LOCKS -1 ++/* We support spinlocks. */ ++#define _POSIX_SPIN_LOCKS 200112L + + /* The `spawn' function family is supported. */ + #define _POSIX_SPAWN 200809L +@@ -140,7 +154,7 @@ + #define _POSIX_TIMERS 0 + + /* The barrier functions are not available. */ +-#define _POSIX_BARRIERS -1 ++#define _POSIX_BARRIERS 200112L + + /* POSIX message queues could be available in future. */ + #define _POSIX_MESSAGE_PASSING 0 +-- +tg: (9a079e2..) t/posix_thread (depends on: baseline) Deleted: glibc-package/branches/eglibc-2.19/debian/patches/hurd-i386/unsubmitted-pthread_posix-option.diff =================================================================== --- glibc-package/branches/eglibc-2.19/debian/patches/hurd-i386/unsubmitted-pthread_posix-option.diff 2014-05-29 12:03:54 UTC (rev 6116) +++ glibc-package/branches/eglibc-2.19/debian/patches/hurd-i386/unsubmitted-pthread_posix-option.diff 2014-05-29 23:08:34 UTC (rev 6117) @@ -1,153 +0,0 @@ -Even if glibc doesn't have an integrated pthread library, it depends on the hurd -packages which have a pthread library, so we should provide all the defines etc. - -Avoid letting glibc try to install its own headers for libpthread. - -No topgit branch, TODO? - ---- - sysdeps/mach/hurd/Makefile | 4 +++ - sysdeps/mach/hurd/bits/posix_opt.h | 40 ++++++++++++++++++++++----------- - sysdeps/mach/hurd/gai_misc.h | 44 +++++++++++++++++++++++++++++++++++++ - 3 files changed, 75 insertions(+), 13 deletions(-) - ---- a/sysdeps/mach/hurd/bits/posix_opt.h -+++ b/sysdeps/mach/hurd/bits/posix_opt.h -@@ -71,24 +71,38 @@ - /* XPG4.2 shared memory is supported. */ - #define _XOPEN_SHM 1 - --/* We do not have the POSIX threads interface. */ --#define _POSIX_THREADS -1 -+/* Tell we have POSIX threads. */ -+#define _POSIX_THREADS 200112L - - /* We have the reentrant functions described in POSIX. */ - #define _POSIX_REENTRANT_FUNCTIONS 1 - #define _POSIX_THREAD_SAFE_FUNCTIONS 200809L - --/* These are all things that won't be supported when _POSIX_THREADS is not. */ -+/* We do not provide priority scheduling for threads. */ - #define _POSIX_THREAD_PRIORITY_SCHEDULING -1 --#define _POSIX_THREAD_ATTR_STACKSIZE -1 --#define _POSIX_THREAD_ATTR_STACKADDR -1 -+ -+/* We support user-defined stack sizes. */ -+#define _POSIX_THREAD_ATTR_STACKSIZE 200112L -+ -+/* We support user-defined stacks. */ -+#define _POSIX_THREAD_ATTR_STACKADDR 200112L -+ -+/* We do not support priority inheritence. */ - #define _POSIX_THREAD_PRIO_INHERIT -1 -+ -+/* We do not support priority protection. */ - #define _POSIX_THREAD_PRIO_PROTECT -1 -+ - #ifdef __USE_XOPEN2K8 -+/* We do not support priority inheritence for robust mutexes. */ - # define _POSIX_THREAD_ROBUST_PRIO_INHERIT -1 -+ -+/* We do not support priority protection for robust mutexes. */ - # define _POSIX_THREAD_ROBUST_PRIO_PROTECT -1 - #endif --#define _POSIX_SEMAPHORES -1 -+ -+/* We support POSIX.1b semaphores. */ -+#define _POSIX_SEMAPHORES 200112L - - /* Real-time signals are not yet supported. */ - #define _POSIX_REALTIME_SIGNALS -1 -@@ -121,17 +135,17 @@ - /* GNU libc provides regular expression handling. */ - #define _POSIX_REGEXP 1 - --/* Reader/Writer locks are not available. */ --#define _POSIX_READER_WRITER_LOCKS -1 -+/* Reader/Writer locks are available. */ -+#define _POSIX_READER_WRITER_LOCKS 200112L - - /* We have a POSIX shell. */ - #define _POSIX_SHELL 1 - --/* We cannot support the Timeouts option without _POSIX_THREADS. */ --#define _POSIX_TIMEOUTS -1 -+/* We support the Timeouts option. */ -+#define _POSIX_TIMEOUTS 200112L - --/* We do not support spinlocks. */ --#define _POSIX_SPIN_LOCKS -1 -+/* We support spinlocks. */ -+#define _POSIX_SPIN_LOCKS 200112L - - /* The `spawn' function family is supported. */ - #define _POSIX_SPAWN 200809L -@@ -140,7 +154,7 @@ - #define _POSIX_TIMERS 0 - - /* The barrier functions are not available. */ --#define _POSIX_BARRIERS -1 -+#define _POSIX_BARRIERS 200112L - - /* POSIX message queues could be available in future. */ - #define _POSIX_MESSAGE_PASSING 0 ---- a/sysdeps/mach/hurd/Makefile -+++ b/sysdeps/mach/hurd/Makefile -@@ -167,6 +167,10 @@ - CFLAGS-dl-load.c = -DEXTERNAL_MAP_FROM_FD - endif - -+ifeq ($(subdir),posix) -+CFLAGS-confstr.c += -DLIBPTHREAD_VERSION='"libpthread 0.3"' -+endif -+ - # Override the generic Makeconfig values so we link against the RPC libs. - link-libc-static := -Wl,--start-group \ - $(patsubst %,$(common-objpfx)%.a,\ ---- /dev/null -+++ b/sysdeps/mach/hurd/gai_misc.h -@@ -0,0 +1,44 @@ -+#include <signal.h> -+#include <pthread.h> -+ -+#define gai_start_notify_thread __gai_start_notify_thread -+#define gai_create_helper_thread __gai_create_helper_thread -+ -+extern inline void -+__gai_start_notify_thread (void) -+{ -+ sigset_t ss; -+ sigemptyset (&ss); -+ sigprocmask(SIG_SETMASK, &ss, NULL); -+} -+ -+extern inline int -+__gai_create_helper_thread (pthread_t *threadp, void *(*tf) (void *), -+ void *arg) -+{ -+ pthread_attr_t attr; -+ -+ /* Make sure the thread is created detached. */ -+ pthread_attr_init (&attr); -+ pthread_attr_setdetachstate (&attr, PTHREAD_CREATE_DETACHED); -+ -+ /* The helper thread needs only very little resources. */ -+ (void) pthread_attr_setstacksize (&attr, 0x10000); -+ -+ /* Block all signals in the helper thread. To do this thoroughly we -+ temporarily have to block all signals here. */ -+ sigset_t ss; -+ sigset_t oss; -+ sigfillset (&ss); -+ sigprocmask(SIG_SETMASK, &ss, &oss); -+ -+ int ret = pthread_create (threadp, &attr, tf, arg); -+ -+ /* Restore the signal mask. */ -+ sigprocmask(SIG_SETMASK, &oss, NULL); -+ -+ (void) pthread_attr_destroy (&attr); -+ return ret; -+} -+ -+#include_next <gai_misc.h> Modified: glibc-package/branches/eglibc-2.19/debian/patches/series =================================================================== --- glibc-package/branches/eglibc-2.19/debian/patches/series 2014-05-29 12:03:54 UTC (rev 6116) +++ glibc-package/branches/eglibc-2.19/debian/patches/series 2014-05-29 23:08:34 UTC (rev 6117) @@ -89,7 +89,8 @@ hurd-i386/tg-grantpt.diff hurd-i386/submitted-add-needed.diff hurd-i386/local-ED.diff -hurd-i386/unsubmitted-pthread_posix-option.diff +hurd-i386/tg-posix_thread.diff +hurd-i386/tg-gai_misc.diff hurd-i386/local-madvise_warn.diff hurd-i386/tg-hurdsig-fixes.diff hurd-i386/tg-hurdsig-global-dispositions.diff -- To UNSUBSCRIBE, email to debian-glibc-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: https://lists.debian.org/e1wq9r4-0004ba...@moszumanska.debian.org