r5220 - in glibc-package/trunk/debian: . patches patches/hurd-i386
Author: sthibault
Date: 2012-04-27 03:48:21 +0000 (Fri, 27 Apr 2012)
New Revision: 5220
Added:
glibc-package/trunk/debian/patches/hurd-i386/tg-tls-threadvar.diff
Removed:
glibc-package/trunk/debian/patches/hurd-i386/unsubmitted-tls.diff
Modified:
glibc-package/trunk/debian/changelog
glibc-package/trunk/debian/patches/series
Log:
* patches/hurd-i386/unsubmitted-tls.diff: Replace patch with...
* patches/hurd-i386/tg-tls-threadvar.diff: patch which moves errno to TLS.
Modified: glibc-package/trunk/debian/changelog
===================================================================
--- glibc-package/trunk/debian/changelog 2012-04-26 23:45:48 UTC (rev 5219)
+++ glibc-package/trunk/debian/changelog 2012-04-27 03:48:21 UTC (rev 5220)
@@ -40,6 +40,8 @@
* control.in/libc,control: Make libc-dev replace the hurd package.
* patches/hurd-i386/tg-symlink_dealloc.diff: Replace with...
* patches/hurd-i386/cvs-symlink_dealloc.diff: ... upstream version.
+ * patches/hurd-i386/unsubmitted-tls.diff: Replace patch with...
+ * patches/hurd-i386/tg-tls-threadvar.diff: patch which moves errno to TLS.
[ Aurelien Jarno ]
* patches/localedata/locale-C.diff: add an LC_TIME section. Closes:
Added: glibc-package/trunk/debian/patches/hurd-i386/tg-tls-threadvar.diff
===================================================================
--- glibc-package/trunk/debian/patches/hurd-i386/tg-tls-threadvar.diff (rev 0)
+++ glibc-package/trunk/debian/patches/hurd-i386/tg-tls-threadvar.diff 2012-04-27 03:48:21 UTC (rev 5220)
@@ -0,0 +1,75 @@
+From: Thomas Schwinge <thomas@schwinge.name>
+Subject: [PATCH] tls-threadvar
+
+TODO: replace the custom threadvar mechanism with generic TLS.
+That will fix sigaltstack.
+
+* sysdeps/mach/hurd/errno-loc.c: Remove file.
+* sysdeps/mach/hurd/errno.c: Remove file.
+* sysdeps/mach/hurd/dl-sysdep.c (errno): Remove variable.
+
+---
+ sysdeps/mach/hurd/dl-sysdep.c | 4 ----
+ sysdeps/mach/hurd/errno-loc.c | 29 -----------------------------
+ sysdeps/mach/hurd/errno.c | 1 -
+ 3 files changed, 0 insertions(+), 34 deletions(-)
+
+diff --git a/sysdeps/mach/hurd/dl-sysdep.c b/sysdeps/mach/hurd/dl-sysdep.c
+index 6f27874..3f37051 100644
+--- a/sysdeps/mach/hurd/dl-sysdep.c
++++ b/sysdeps/mach/hurd/dl-sysdep.c
+@@ -62,10 +62,6 @@ hp_timing_t _dl_cpuclock_offset;
+
+ struct hurd_startup_data *_dl_hurd_data;
+
+-/* This is used only within ld.so, via dl-minimal.c's __errno_location. */
+-#undef errno
+-int errno attribute_hidden;
+-
+ /* Defining these variables here avoids the inclusion of hurdsig.c. */
+ unsigned long int __hurd_sigthread_stack_base;
+ unsigned long int __hurd_sigthread_stack_end;
+diff --git a/sysdeps/mach/hurd/errno-loc.c b/sysdeps/mach/hurd/errno-loc.c
+deleted file mode 100644
+index 9ff09eb..0000000
+--- a/sysdeps/mach/hurd/errno-loc.c
++++ /dev/null
+@@ -1,29 +0,0 @@
+-/* __errno_location -- helper function for locating per-thread errno value
+- Copyright (C) 2002 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. */
+-
+-#include <errno.h>
+-#include <hurd/threadvar.h>
+-
+-int *
+-__errno_location (void)
+-{
+- return (int *) __hurd_threadvar_location (_HURD_THREADVAR_ERRNO);
+-}
+-strong_alias (__errno_location, __hurd_errno_location)
+-libc_hidden_def (__errno_location)
+diff --git a/sysdeps/mach/hurd/errno.c b/sysdeps/mach/hurd/errno.c
+deleted file mode 100644
+index a29091b..0000000
+--- a/sysdeps/mach/hurd/errno.c
++++ /dev/null
+@@ -1 +0,0 @@
+-/* No definition of `errno' variable on the Hurd. */
+--
+tg: (5492f2c..) t/tls-threadvar (depends on: t/tls)
Deleted: glibc-package/trunk/debian/patches/hurd-i386/unsubmitted-tls.diff
===================================================================
--- glibc-package/trunk/debian/patches/hurd-i386/unsubmitted-tls.diff 2012-04-26 23:45:48 UTC (rev 5219)
+++ glibc-package/trunk/debian/patches/hurd-i386/unsubmitted-tls.diff 2012-04-27 03:48:21 UTC (rev 5220)
@@ -1,19 +0,0 @@
-For now errno is still a threadvar variable.
-
-t/tls-threadvar (when migrating to newer upstream glibc)
-
----
- include/errno.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
---- a/include/errno.h
-+++ b/include/errno.h
-@@ -21,7 +21,7 @@
-
- # include <tls.h>
-
--# if USE___THREAD
-+# if USE___THREAD && !defined(__GNU__)
- # undef errno
- # ifndef NOT_IN_libc
- # define errno __libc_errno
Modified: glibc-package/trunk/debian/patches/series
===================================================================
--- glibc-package/trunk/debian/patches/series 2012-04-26 23:45:48 UTC (rev 5219)
+++ glibc-package/trunk/debian/patches/series 2012-04-27 03:48:21 UTC (rev 5220)
@@ -112,7 +112,6 @@
hurd-i386/local-dl-dynamic-weak.diff
hurd-i386/local-enable-ldconfig.diff
hurd-i386/tg-mlock.diff
-hurd-i386/unsubmitted-tls.diff
hurd-i386/tg-tls.diff
hurd-i386/tg-tlsdesc.sym.diff
hurd-i386/unsubmitted-gcc-4.1-init-first.diff
@@ -190,6 +189,7 @@
hurd-i386/tg-libpthread_depends.diff
hurd-i386/libpthread_librt-link.diff
hurd-i386/libpthread_version.diff
+hurd-i386/tg-tls-threadvar.diff
kfreebsd/submitted-libc_once.diff
Reply to: