[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

r5510 - in glibc-package/branches/eglibc-2.17/debian: . patches patches/hurd-i386



Author: sthibault
Date: 2013-03-13 16:22:32 +0000 (Wed, 13 Mar 2013)
New Revision: 5510

Added:
   glibc-package/branches/eglibc-2.17/debian/patches/hurd-i386/tg-exec-static.diff
Modified:
   glibc-package/branches/eglibc-2.17/debian/changelog
   glibc-package/branches/eglibc-2.17/debian/patches/series
Log:
patches/hurd-i386/tg-exec-static.diff: New patch, fixes boot with
statically-linked exec.


Modified: glibc-package/branches/eglibc-2.17/debian/changelog
===================================================================
--- glibc-package/branches/eglibc-2.17/debian/changelog	2013-03-13 16:03:53 UTC (rev 5509)
+++ glibc-package/branches/eglibc-2.17/debian/changelog	2013-03-13 16:22:32 UTC (rev 5510)
@@ -16,6 +16,8 @@
     paths without ending \0.
   * patches/hurd-i386/tg-nice.diff: New patch, fixes nice level granularity.
   * patches/hurd-i386/tg-tls.diff: Update to tg version.
+  * patches/hurd-i386/tg-exec-static.diff: New patch, fixes boot with
+    statically-linked exec.
 
   [ Adam Conrad ]
   * debian/debhelper.in/libc.postint: Switch from 'awk gsub' to 'tr -d'

Added: glibc-package/branches/eglibc-2.17/debian/patches/hurd-i386/tg-exec-static.diff
===================================================================
--- glibc-package/branches/eglibc-2.17/debian/patches/hurd-i386/tg-exec-static.diff	                        (rev 0)
+++ glibc-package/branches/eglibc-2.17/debian/patches/hurd-i386/tg-exec-static.diff	2013-03-13 16:22:32 UTC (rev 5510)
@@ -0,0 +1,27 @@
+From: Samuel Thibault <samuel.thibault@ens-lyon.org>
+Subject: [PATCH] Fix boot with statically-linked exec server.
+
+* sysdeps/mach/hurd/i386/init-first.c (init): Also find ELF headers by oneself
+when the pointer given in D is nul (as set by ext2fs).
+
+Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+---
+ sysdeps/mach/hurd/i386/init-first.c |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/sysdeps/mach/hurd/i386/init-first.c b/sysdeps/mach/hurd/i386/init-first.c
+index 7460005..d66df4d 100644
+--- a/sysdeps/mach/hurd/i386/init-first.c
++++ b/sysdeps/mach/hurd/i386/init-first.c
+@@ -184,7 +184,7 @@ init (int *data)
+   /* If we are the bootstrap task started by the kernel,
+      then after the environment pointers there is no Hurd
+      data block; the argument strings start there.  */
+-  if ((void *) d == argv[0])
++  if ((void *) d == argv[0] || !d->phdr)
+     {
+       /* We may need to see our own phdrs, e.g. for TLS setup.
+          Try the usual kludge to find the headers without help from
+-- 
+tg: (bb61478..) t/exec-static (depends on: t/tls)

Modified: glibc-package/branches/eglibc-2.17/debian/patches/series
===================================================================
--- glibc-package/branches/eglibc-2.17/debian/patches/series	2013-03-13 16:03:53 UTC (rev 5509)
+++ glibc-package/branches/eglibc-2.17/debian/patches/series	2013-03-13 16:22:32 UTC (rev 5510)
@@ -120,6 +120,7 @@
 hurd-i386/tg-remap_getcwd.diff
 hurd-i386/tg-af_local_strlen.diff
 hurd-i386/tg-nice.diff
+hurd-i386/tg-exec-static.diff
 
 i386/local-biarch.diff
 i386/local-cmov.diff


Reply to: