Author: sthibault Date: 2014-04-04 23:00:20 +0000 (Fri, 04 Apr 2014) New Revision: 6011
Added: glibc-package/branches/eglibc-2.19/debian/patches/hurd-i386/cvs-libpthread-pthread_condattr_setclock.diff Removed: glibc-package/branches/eglibc-2.19/debian/patches/hurd-i386/libpthread_nort.diff Modified: glibc-package/branches/eglibc-2.19/debian/changelog glibc-package/branches/eglibc-2.19/debian/patches/series Log: Fix pthread_condattr_setclock for glib2.0 * patches/hurd-i386/libpthread_nort.diff: Remove patch, replaced by... * patches/hurd-i386/cvs-libpthread-pthread_condattr_setclock.diff: Fix for pthread_condattr_setclock, for glib2.0 build. Modified: glibc-package/branches/eglibc-2.19/debian/changelog =================================================================== --- glibc-package/branches/eglibc-2.19/debian/changelog 2014-04-04 22:47:58 UTC (rev 6010) +++ glibc-package/branches/eglibc-2.19/debian/changelog 2014-04-04 23:00:20 UTC (rev 6011) @@ -78,6 +78,9 @@ [ Samuel Thibault ] * patches/hurd-i386/tg-mmap_file_prot_none_fix.diff: New patch, fixes locale generation. + * patches/hurd-i386/libpthread_nort.diff: Remove patch, replaced by... + * patches/hurd-i386/cvs-libpthread-pthread_condattr_setclock.diff: Fix for + pthread_condattr_setclock, for glib2.0 build. -- Aurelien Jarno <aure...@debian.org> Sun, 02 Mar 2014 16:19:49 +0100 Copied: glibc-package/branches/eglibc-2.19/debian/patches/hurd-i386/cvs-libpthread-pthread_condattr_setclock.diff (from rev 6010, glibc-package/trunk/debian/patches/hurd-i386/cvs-libpthread-pthread_condattr_setclock.diff) =================================================================== --- glibc-package/branches/eglibc-2.19/debian/patches/hurd-i386/cvs-libpthread-pthread_condattr_setclock.diff (rev 0) +++ glibc-package/branches/eglibc-2.19/debian/patches/hurd-i386/cvs-libpthread-pthread_condattr_setclock.diff 2014-04-04 23:00:20 UTC (rev 6011) @@ -0,0 +1,43 @@ +commit a0e2516e0f10619ef708109ff3bc6b54b44d4193 +Author: Samuel Thibault <samuel.thiba...@ens-lyon.org> +Date: Fri Apr 4 20:39:08 2014 +0200 + + Use only clock_gettime, do not depend on librt + + clock_gettime is actually provided by libc, not librt, so we don't need + the latter, and thus avoid the librt dependency, which would cause + initialization issues. + + * sysdeps/generic/pt-condattr-setclock.c (pthread_condattr_setclock): + Use clock_gettime instead of clock_getres to test for clock + availability. + * Makefile: Do not link against librt. + +diff --git a/libpthread/Makefile b/libpthread/Makefile +index 8ef990e..2f45c1c 100644 +--- a/libpthread/Makefile ++++ b/libpthread/Makefile +@@ -216,10 +216,8 @@ VPATH += $(SYSDEP_PATH) + + ifeq ($(IN_GLIBC),no) + HURDLIBS = ihash +-LDLIBS = -lrt + else + LDLIBS-pthread.so = -lihash +-$(objpfx)libpthread.so: $(common-objpfx)rt/librt.so + endif + + ifeq ($(IN_GLIBC),no) +diff --git a/libpthread/sysdeps/generic/pt-condattr-setclock.c b/sysdeps/generic/pt-condattr-setclock.c +index c5a78ef..c8ac4ce 100644 +--- a/libpthread/sysdeps/generic/pt-condattr-setclock.c ++++ b/libpthread/sysdeps/generic/pt-condattr-setclock.c +@@ -35,7 +35,7 @@ pthread_condattr_setclock (pthread_condattr_t *attr, clockid_t clock) + struct timespec ts; + int res; + +- res = clock_getres (CLOCK_MONOTONIC, &ts); ++ res = clock_gettime (CLOCK_MONOTONIC, &ts); + avail = res < 0 ? -1 : 1; + } + Deleted: glibc-package/branches/eglibc-2.19/debian/patches/hurd-i386/libpthread_nort.diff =================================================================== --- glibc-package/branches/eglibc-2.19/debian/patches/hurd-i386/libpthread_nort.diff 2014-04-04 22:47:58 UTC (rev 6010) +++ glibc-package/branches/eglibc-2.19/debian/patches/hurd-i386/libpthread_nort.diff 2014-04-04 23:00:20 UTC (rev 6011) @@ -1,109 +0,0 @@ -Revert - -commit 69e89a859882e4f675dd5491edc969159d8a4002 -Author: Pino Toscano <toscano.p...@tiscali.it> -Date: Sun Apr 22 00:38:26 2012 +0200 - - __pthread_timedblock: switch to clock_gettime - - Use `clock_gettime' with the provided clock instead of `gettimeofday', - linking to rt. - - * sysdeps/mach/pt-timedblock.c (__pthread_timedblock): Switch to - `clock_gettime'. - * Makefile [!IN_GLIBC] (LDLIBS): Link to rt. - [IN_GLIBC] ($(objpfx)libpthread.so): Likewise. - * Makefile.am (libpthread_a_LDADD): Likewise. - ---- - libpthread/Makefile | 2 - - libpthread/sysdeps/generic/pt-condattr-setclock.c | 27 +++------------------- - libpthread/sysdeps/mach/pt-timedblock.c | 13 +++++----- - 4 files changed, 11 insertions(+), 33 deletions(-) - ---- a/libpthread/Makefile -+++ b/libpthread/Makefile -@@ -216,10 +216,8 @@ VPATH += $(SYSDEP_PATH) - - ifeq ($(IN_GLIBC),no) - HURDLIBS = ihash --LDLIBS = -lrt - else - LDLIBS-pthread.so = -lihash --$(objpfx)libpthread.so: $(common-objpfx)rt/librt.so - endif - - ifeq ($(IN_GLIBC),no) ---- a/libpthread/sysdeps/mach/pt-timedblock.c -+++ b/libpthread/sysdeps/mach/pt-timedblock.c -@@ -36,26 +36,27 @@ __pthread_timedblock (struct __pthread * - error_t err; - mach_msg_header_t msg; - mach_msg_timeout_t timeout; -- struct timespec now; -+ struct timeval now; - - /* We have an absolute time and now we have to convert it to a - relative time. Arg. */ - -- err = clock_gettime (clock_id, &now); -+ err = gettimeofday(&now, NULL); - assert (! err); - - if (now.tv_sec > abstime->tv_sec - || (now.tv_sec == abstime->tv_sec -- && now.tv_nsec > abstime->tv_nsec)) -+ && now.tv_usec > ((abstime->tv_nsec + 999) / 1000))) - return ETIMEDOUT; - - timeout = (abstime->tv_sec - now.tv_sec) * 1000; - -- if (abstime->tv_nsec >= now.tv_nsec) -- timeout += (abstime->tv_nsec - now.tv_nsec + 999999) / 1000000; -+ if (((abstime->tv_nsec + 999) / 1000) >= now.tv_usec) -+ timeout += (((abstime->tv_nsec + 999) / 1000) - now.tv_usec + 999) / 1000; - else - /* Need to do a carry. */ -- timeout -= (now.tv_nsec - abstime->tv_nsec + 999999) / 1000000; -+ timeout -= (now.tv_usec + 999) / 1000 - -+ ((abstime->tv_nsec + 999999) / 1000000); - - err = __mach_msg (&msg, MACH_RCV_MSG | MACH_RCV_TIMEOUT, 0, - sizeof msg, thread->wakeupmsg.msgh_remote_port, ---- a/libpthread/sysdeps/generic/pt-condattr-setclock.c -+++ b/libpthread/sysdeps/generic/pt-condattr-setclock.c -@@ -23,30 +23,11 @@ - int - pthread_condattr_setclock (pthread_condattr_t *attr, clockid_t clock) - { -- /* Only a few clocks are allowed. CLOCK_REALTIME is always allowed. -- CLOCK_MONOTONIC only if the kernel has the necessary support. */ -- if (clock == CLOCK_MONOTONIC) -+ if (__pthread_default_condattr.clock == clock) - { -- /* Check whether the clock is available. */ -- static int avail; -- -- if (avail == 0) -- { -- struct timespec ts; -- int res; -- -- res = clock_getres (CLOCK_MONOTONIC, &ts); -- avail = res < 0 ? -1 : 1; -- } -- -- if (avail < 0) -- /* Not available. */ -- return EINVAL; -+ attr->clock = clock; -+ return 0; - } -- else if (clock != CLOCK_REALTIME) -- return EINVAL; -- -- attr->clock = clock; - -- return 0; -+ return EINVAL; - } Modified: glibc-package/branches/eglibc-2.19/debian/patches/series =================================================================== --- glibc-package/branches/eglibc-2.19/debian/patches/series 2014-04-04 22:47:58 UTC (rev 6010) +++ glibc-package/branches/eglibc-2.19/debian/patches/series 2014-04-04 23:00:20 UTC (rev 6011) @@ -95,7 +95,7 @@ hurd-i386/libpthread_sigmask.diff hurd-i386/libpthread_clean.diff hurd-i386/tg-libpthread_depends.diff -hurd-i386/libpthread_nort.diff +hurd-i386/cvs-libpthread-pthread_condattr_setclock.diff hurd-i386/libpthread_version.diff hurd-i386/tg-chflags.diff hurd-i386/submitted-exec_filename.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/e1wwd5w-0000zh...@moszumanska.debian.org