Author: ps-guest Date: 2013-05-11 13:36:35 +0000 (Sat, 11 May 2013) New Revision: 5580
Removed: glibc-package/trunk/debian/patches/any/local-linuxthreads-lowlevellock.diff glibc-package/trunk/debian/patches/any/local-linuxthreads-unwind.diff Modified: glibc-package/trunk/debian/changelog glibc-package/trunk/debian/patches/series Log: drop obsolete any/local-linuxthreads-unwind.diff, any/local-linuxthreads-lowlevellock.diff Modified: glibc-package/trunk/debian/changelog =================================================================== --- glibc-package/trunk/debian/changelog 2013-05-10 22:46:12 UTC (rev 5579) +++ glibc-package/trunk/debian/changelog 2013-05-11 13:36:35 UTC (rev 5580) @@ -36,7 +36,9 @@ changes in ctype initialization * reenable lost any/local-linuxthreads-XPG7.diff any/local-linuxthreads-setclock.diff - * kfreebsd/local-sysdeps.diff: update to revision 4427 (from glibc-bsd). + * drop obsolete any/local-linuxthreads-unwind.diff + any/local-linuxthreads-lowlevellock.diff + * kfreebsd/local-sysdeps.diff: update to revision 4428 (from glibc-bsd). * Add into testsuite-checking/expected-results-*-kfreebsd-gnu-* tst-timer5 test and new tst-backtrace[4-6] tests that are known to fail. Deleted: glibc-package/trunk/debian/patches/any/local-linuxthreads-lowlevellock.diff =================================================================== --- glibc-package/trunk/debian/patches/any/local-linuxthreads-lowlevellock.diff 2013-05-10 22:46:12 UTC (rev 5579) +++ glibc-package/trunk/debian/patches/any/local-linuxthreads-lowlevellock.diff 2013-05-11 13:36:35 UTC (rev 5580) @@ -1,160 +0,0 @@ ---- - linuxthreads/sysdeps/unix/sysv/linux/rtld-lowlevel.h | 153 +++++++++++++++++++ - 1 file changed, 153 insertions(+) - ---- /dev/null -+++ b/linuxthreads/sysdeps/unix/sysv/linux/rtld-lowlevel.h -@@ -0,0 +1,153 @@ -+/* Defintions for lowlevel handling in ld.so. -+ Copyright (C) 2006 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+#ifndef _RTLD_LOWLEVEL_H -+#define _RTLD_LOWLEVEL_H 1 -+ -+#include <atomic.h> -+#include <lowlevellock.h> -+ -+ -+/* Special multi-reader lock used in ld.so. */ -+#define __RTLD_MRLOCK_WRITER 1 -+#define __RTLD_MRLOCK_RWAIT 2 -+#define __RTLD_MRLOCK_WWAIT 4 -+#define __RTLD_MRLOCK_RBITS \ -+ ~(__RTLD_MRLOCK_WRITER | __RTLD_MRLOCK_RWAIT | __RTLD_MRLOCK_WWAIT) -+#define __RTLD_MRLOCK_INC 8 -+#define __RTLD_MRLOCK_TRIES 5 -+ -+ -+typedef int __rtld_mrlock_t; -+ -+ -+#define __rtld_mrlock_define(CLASS,NAME) \ -+ CLASS __rtld_mrlock_t NAME; -+ -+ -+#define _RTLD_MRLOCK_INITIALIZER 0 -+#define __rtld_mrlock_initialize(NAME) \ -+ (void) ((NAME) = 0) -+ -+ -+#define __rtld_mrlock_lock(lock) \ -+ do { \ -+ __label__ out; \ -+ while (1) \ -+ { \ -+ int oldval; \ -+ for (int tries = 0; tries < __RTLD_MRLOCK_TRIES; ++tries) \ -+ { \ -+ oldval = lock; \ -+ while (__builtin_expect ((oldval \ -+ & (__RTLD_MRLOCK_WRITER \ -+ | __RTLD_MRLOCK_WWAIT)) \ -+ == 0, 1)) \ -+ { \ -+ int newval = ((oldval & __RTLD_MRLOCK_RBITS) \ -+ + __RTLD_MRLOCK_INC); \ -+ int ret = atomic_compare_and_exchange_val_acq (&(lock), \ -+ newval, \ -+ oldval); \ -+ if (__builtin_expect (ret == oldval, 1)) \ -+ goto out; \ -+ oldval = ret; \ -+ } \ -+ atomic_delay (); \ -+ } \ -+ if ((oldval & __RTLD_MRLOCK_RWAIT) == 0) \ -+ { \ -+ atomic_or (&(lock), __RTLD_MRLOCK_RWAIT); \ -+ oldval |= __RTLD_MRLOCK_RWAIT; \ -+ } \ -+ lll_futex_wait (lock, oldval); \ -+ } \ -+ out:; \ -+ } while (0) -+ -+ -+#define __rtld_mrlock_unlock(lock) \ -+ do { \ -+ int oldval = atomic_exchange_and_add (&(lock), -__RTLD_MRLOCK_INC); \ -+ if (__builtin_expect ((oldval \ -+ & (__RTLD_MRLOCK_RBITS | __RTLD_MRLOCK_WWAIT)) \ -+ == (__RTLD_MRLOCK_INC | __RTLD_MRLOCK_WWAIT), 0)) \ -+ /* We have to wake all threads since there might be some queued \ -+ readers already. */ \ -+ lll_futex_wake (&(lock), 0x7fffffff); \ -+ } while (0) -+ -+ -+/* There can only ever be one thread trying to get the exclusive lock. */ -+#define __rtld_mrlock_change(lock) \ -+ do { \ -+ __label__ out; \ -+ while (1) \ -+ { \ -+ int oldval; \ -+ for (int tries = 0; tries < __RTLD_MRLOCK_TRIES; ++tries) \ -+ { \ -+ oldval = lock; \ -+ while (__builtin_expect ((oldval & __RTLD_MRLOCK_RBITS) == 0, 1)) \ -+ { \ -+ int newval = ((oldval & __RTLD_MRLOCK_RWAIT) \ -+ + __RTLD_MRLOCK_WRITER); \ -+ int ret = atomic_compare_and_exchange_val_acq (&(lock), \ -+ newval, \ -+ oldval); \ -+ if (__builtin_expect (ret == oldval, 1)) \ -+ goto out; \ -+ oldval = ret; \ -+ } \ -+ atomic_delay (); \ -+ } \ -+ atomic_or (&(lock), __RTLD_MRLOCK_WWAIT); \ -+ oldval |= __RTLD_MRLOCK_WWAIT; \ -+ lll_futex_wait (lock, oldval); \ -+ } \ -+ out:; \ -+ } while (0) -+ -+ -+#define __rtld_mrlock_done(lock) \ -+ do { \ -+ int oldval = atomic_exchange_and_add (&(lock), -__RTLD_MRLOCK_WRITER); \ -+ if (__builtin_expect ((oldval & __RTLD_MRLOCK_RWAIT) != 0, 0)) \ -+ lll_futex_wake (&(lock), 0x7fffffff); \ -+ } while (0) -+ -+ -+/* Function to wait for variable become zero. Used in ld.so for -+ reference counters. */ -+#define __rtld_waitzero(word) \ -+ do { \ -+ while (1) \ -+ { \ -+ int val = word; \ -+ if (val == 0) \ -+ break; \ -+ lll_futex_wait (&(word), val); \ -+ } \ -+ } while (0) -+ -+ -+#define __rtld_notify(word) \ -+ lll_futex_wake (&(word), 1) -+ -+#endif Deleted: glibc-package/trunk/debian/patches/any/local-linuxthreads-unwind.diff =================================================================== --- glibc-package/trunk/debian/patches/any/local-linuxthreads-unwind.diff 2013-05-10 22:46:12 UTC (rev 5579) +++ glibc-package/trunk/debian/patches/any/local-linuxthreads-unwind.diff 2013-05-11 13:36:35 UTC (rev 5580) @@ -1,84 +0,0 @@ ---- - linuxthreads/sysdeps/pthread/Makefile | 6 ++ - linuxthreads/sysdeps/pthread/unwind-resume.c | 64 +++++++++++++++++++++++++++ - 2 files changed, 70 insertions(+) - ---- /dev/null -+++ b/linuxthreads/sysdeps/pthread/unwind-resume.c -@@ -0,0 +1,64 @@ -+/* Copyright (C) 2003 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ Contributed by Jakub Jelinek <ja...@redhat.com>. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public License as -+ published by the Free Software Foundation; either version 2.1 of the -+ License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; see the file COPYING.LIB. If not, -+ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, -+ Boston, MA 02111-1307, USA. */ -+ -+#include <dlfcn.h> -+#include <stdio.h> -+#include <unwind.h> -+ -+static void (*libgcc_s_resume) (struct _Unwind_Exception *exc); -+static _Unwind_Reason_Code (*libgcc_s_personality) -+ (int, _Unwind_Action, _Unwind_Exception_Class, struct _Unwind_Exception *, -+ struct _Unwind_Context *); -+ -+static void -+init (void) -+{ -+ void *resume, *personality; -+ void *handle; -+ -+ handle = __libc_dlopen ("libgcc_s.so.1"); -+ -+ if (handle == NULL -+ || (resume = __libc_dlsym (handle, "_Unwind_Resume")) == NULL -+ || (personality = __libc_dlsym (handle, "__gcc_personality_v0")) == NULL) -+ __libc_fatal ("libgcc_s.so.1 must be installed for pthread_cancel to work\n"); -+ -+ libgcc_s_resume = resume; -+ libgcc_s_personality = personality; -+} -+ -+void -+_Unwind_Resume (struct _Unwind_Exception *exc) -+{ -+ if (__builtin_expect (libgcc_s_resume == NULL, 0)) -+ init (); -+ libgcc_s_resume (exc); -+} -+ -+_Unwind_Reason_Code -+__gcc_personality_v0 (int version, _Unwind_Action actions, -+ _Unwind_Exception_Class exception_class, -+ struct _Unwind_Exception *ue_header, -+ struct _Unwind_Context *context) -+{ -+ if (__builtin_expect (libgcc_s_personality == NULL, 0)) -+ init (); -+ return libgcc_s_personality (version, actions, exception_class, -+ ue_header, context); -+} ---- a/linuxthreads/sysdeps/pthread/Makefile -+++ b/linuxthreads/sysdeps/pthread/Makefile -@@ -1,3 +1,9 @@ -+ifeq ($(subdir),csu) -+routines += unwind-resume -+shared-only-routines += unwind-resume -+CFLAGS-unwind-resume.c += -fexceptions -fasynchronous-unwind-tables -+endif -+ - ifeq ($(subdir),rt) - librt-sysdep_routines += timer_routines - CPPFLAGS += -DBROKEN_THREAD_SIGNALS Modified: glibc-package/trunk/debian/patches/series =================================================================== --- glibc-package/trunk/debian/patches/series 2013-05-10 22:46:12 UTC (rev 5579) +++ glibc-package/trunk/debian/patches/series 2013-05-11 13:36:35 UTC (rev 5580) @@ -186,14 +186,12 @@ any/local-linuxthreads-fd.diff any/local-linuxthreads-gscope.diff any/local-linuxthreads-kill_other.diff -any/local-linuxthreads-lowlevellock.diff any/local-linuxthreads-fatalprepare.diff any/local-linuxthreads-ptw.diff any/local-linuxthreads-semaphore_h.diff any/local-linuxthreads-signals.diff any/local-linuxthreads-stacksize.diff any/local-linuxthreads-tst-sighandler.diff -any/local-linuxthreads-unwind.diff any/local-linuxthreads-weak.diff any/local-linuxthreads-XPG7.diff any/local-linuxthreads-setclock.diff -- To UNSUBSCRIBE, email to debian-glibc-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/e1ub9yv-0000jo...@vasks.debian.org