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

r4280 - in glibc-package/branches/eglibc-2.11/debian: . patches patches/any patches/s390



Author: aurel32
Date: 2010-05-24 16:39:55 +0000 (Mon, 24 May 2010)
New Revision: 4280

Added:
   glibc-package/branches/eglibc-2.11/debian/patches/any/cvs-stat-issock.diff
   glibc-package/branches/eglibc-2.11/debian/patches/s390/cvs-makecontext.diff
Removed:
   glibc-package/branches/eglibc-2.11/debian/patches/any/submitted-stat-issock.diff
Modified:
   glibc-package/branches/eglibc-2.11/debian/changelog
   glibc-package/branches/eglibc-2.11/debian/patches/series
Log:
  * Add debian/patches/s390/cvs-makecontext.diff from upstream to fix 
    makecontext() on s390.
  * Replace debian/patches/submitted/cvs-stat-issock.diff by the upstream patch
    debian/patches/any/cvs-stat-issock.diff.



Modified: glibc-package/branches/eglibc-2.11/debian/changelog
===================================================================
--- glibc-package/branches/eglibc-2.11/debian/changelog	2010-05-24 16:18:37 UTC (rev 4279)
+++ glibc-package/branches/eglibc-2.11/debian/changelog	2010-05-24 16:39:55 UTC (rev 4280)
@@ -72,6 +72,10 @@
   * Add debian/patches/hppa/local-longjmp-chk.diff to fix FTBFS on hppa.
   * Add debian/patches/hppa/local-lowlevellock.diff to fix the testsuite
     on hppa.
+  * Add debian/patches/s390/cvs-makecontext.diff from upstream to fix 
+    makecontext() on s390.
+  * Replace debian/patches/submitted/cvs-stat-issock.diff by the upstream patch
+    debian/patches/any/cvs-stat-issock.diff.
 
   [ Samuel Thibault ]
   * debian/patches/hurd-i386/submitted-rtld_lock_recursive.diff: New patch to

Added: glibc-package/branches/eglibc-2.11/debian/patches/any/cvs-stat-issock.diff
===================================================================
--- glibc-package/branches/eglibc-2.11/debian/patches/any/cvs-stat-issock.diff	                        (rev 0)
+++ glibc-package/branches/eglibc-2.11/debian/patches/any/cvs-stat-issock.diff	2010-05-24 16:39:55 UTC (rev 4280)
@@ -0,0 +1,28 @@
+2010-04-04  Ulrich Drepper  <drepper@redhat.com>
+ 
+	[BZ #11279]
+	* io/sys/stat.h: Always define S_ISSOCK for XPG6 and up.
+
+diff --git a/io/sys/stat.h b/io/sys/stat.h
+index 733a927..ac740ca 100644
+--- a/io/sys/stat.h
++++ b/io/sys/stat.h
+@@ -1,4 +1,4 @@
+-/* Copyright (C) 1991, 1992, 1995-2004, 2005, 2006, 2007, 2009
++/* Copyright (C) 1991, 1992, 1995-2004, 2005, 2006, 2007, 2009, 2010
+    Free Software Foundation, Inc.
+    This file is part of the GNU C Library.
+ 
+@@ -143,9 +143,11 @@ __BEGIN_DECLS
+ # define S_ISLNK(mode)  0
+ #endif
+ 
+-#if (defined __USE_BSD || defined __USE_UNIX98) \
++#if (defined __USE_BSD || defined __USE_UNIX98 || defined __USE_XOPEN2K) \
+     && defined __S_IFSOCK
+ # define S_ISSOCK(mode) __S_ISTYPE((mode), __S_IFSOCK)
++#elif defined __USE_XOPEN2K
++# define S_ISSOCK(mode) 0
+ #endif
+ 
+ /* These are from POSIX.1b.  If the objects are not implemented using separate

Deleted: glibc-package/branches/eglibc-2.11/debian/patches/any/submitted-stat-issock.diff
===================================================================
--- glibc-package/branches/eglibc-2.11/debian/patches/any/submitted-stat-issock.diff	2010-05-24 16:18:37 UTC (rev 4279)
+++ glibc-package/branches/eglibc-2.11/debian/patches/any/submitted-stat-issock.diff	2010-05-24 16:39:55 UTC (rev 4280)
@@ -1,18 +0,0 @@
-2010-02-13  Aurelien Jarno  <aurelien@aurel32.net>
-
-	* io/sys/stat.h: The S_ISSOCK macro has been mandatory since 
-	POSIX 2001.
-
-diff --git a/io/sys/stat.h b/io/sys/stat.h
-index 733a927..f2d4d5b 100644
---- a/io/sys/stat.h
-+++ b/io/sys/stat.h
-@@ -143,7 +143,7 @@ __BEGIN_DECLS
- # define S_ISLNK(mode)  0
- #endif
- 
--#if (defined __USE_BSD || defined __USE_UNIX98) \
-+#if (defined __USE_BSD || defined __USE_UNIX98 || defined __USE_XOPEN2K) \
-     && defined __S_IFSOCK
- # define S_ISSOCK(mode) __S_ISTYPE((mode), __S_IFSOCK)
- #endif

Added: glibc-package/branches/eglibc-2.11/debian/patches/s390/cvs-makecontext.diff
===================================================================
--- glibc-package/branches/eglibc-2.11/debian/patches/s390/cvs-makecontext.diff	                        (rev 0)
+++ glibc-package/branches/eglibc-2.11/debian/patches/s390/cvs-makecontext.diff	2010-05-24 16:39:55 UTC (rev 4280)
@@ -0,0 +1,224 @@
+2010-04-13  Andreas Schwab  <schwab@redhat.com>
+
+	* sysdeps/unix/sysv/linux/s390/s390-32/makecontext.c: Fix setup of
+	overflow area.
+	* sysdeps/unix/sysv/linux/s390/s390-64/makecontext.c: Likewise.
+
+diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/makecontext.c b/sysdeps/unix/sysv/linux/s390/s390-32/makecontext.c
+index 94760e0..0e309c3 100644
+--- a/sysdeps/unix/sysv/linux/s390/s390-32/makecontext.c
++++ b/sysdeps/unix/sysv/linux/s390/s390-32/makecontext.c
+@@ -1,4 +1,4 @@
+-/* Copyright (C) 2001 Free Software Foundation, Inc.
++/* Copyright (C) 2001, 2010 Free Software Foundation, Inc.
+    This file is part of the GNU C Library.
+    Contributed by Martin Schwidefsky (schwidefsky@de.ibm.com).
+ 
+@@ -28,15 +28,15 @@
+    double, complex and structure with sizes 0, 2, 4 or 8
+    won't work.
+    makecontext sets up a stack and the registers for the
+-   context. The stack looks like this:
+-           size                         offset
++   user context. The stack looks like this:
++	   size                         offset
+     %r15 ->    +-----------------------+
+-             4 | back chain (zero)     |  0
+-             4 | reserved              |  4
+-            88 | save area for (*func) |  8
+-               +-----------------------+
+-             n | overflow parameters   | 96
+-               +-----------------------+
++	     4 | back chain (zero)     |  0
++	     4 | reserved              |  4
++	    88 | save area for (*func) |  8
++	       +-----------------------+
++	     n | overflow parameters   | 96
++	       +-----------------------+
+    The registers are set up like this:
+      %r2-%r6: parameters 1 to 5
+      %r7    : (*func) pointer
+@@ -54,27 +54,27 @@ void
+ __makecontext (ucontext_t *ucp, void (*func) (void), int argc, ...)
+ {
+   extern void __makecontext_ret (void);
+-  unsigned long *sp;
++  unsigned long int *sp;
+   va_list ap;
+-  int i;
+ 
+-  sp = (unsigned long *) (((unsigned long) ucp->uc_stack.ss_sp
+-			   + ucp->uc_stack.ss_size) & -8L);
++  sp = (unsigned long int *) (((unsigned long int) ucp->uc_stack.ss_sp
++			       + ucp->uc_stack.ss_size) & -8L);
+ 
+   /* Set the return address to trampoline.  */
+-  ucp->uc_mcontext.gregs[14] = (long) __makecontext_ret;
++  ucp->uc_mcontext.gregs[14] = (long int) __makecontext_ret;
+ 
+   /* Set register parameters.  */
+   va_start (ap, argc);
+-  for (i = 0; (i < argc) && (i < 5); i++)
+-    ucp->uc_mcontext.gregs[2+i] = va_arg (ap, long);
++  for (int i = 0; i < argc && i < 5; ++i)
++    ucp->uc_mcontext.gregs[2 + i] = va_arg (ap, long int);
+ 
+   /* The remaining arguments go to the overflow area.  */
+-  if (argc > 5) {
+-    sp -= argc - 5;
+-    for (i = 5; i < argc; i++)
+-      sp[i] = va_arg(ap, long);
+-  }
++  if (argc > 5)
++    {
++      sp -= argc - 5;
++      for (int i = 5; i < argc; ++i)
++	sp[i - 5] = va_arg (ap, long int);
++    }
+   va_end (ap);
+ 
+   /* Make room for the save area and set the backchain.  */
+@@ -82,24 +82,24 @@ __makecontext (ucontext_t *ucp, void (*func) (void), int argc, ...)
+   *sp = 0;
+ 
+   /* Pass (*func) to __start_context in %r7.  */
+-  ucp->uc_mcontext.gregs[7] = (long) func;
++  ucp->uc_mcontext.gregs[7] = (long int) func;
+ 
+   /* Pass ucp->uc_link to __start_context in %r8.  */
+-  ucp->uc_mcontext.gregs[8] = (long) ucp->uc_link;
++  ucp->uc_mcontext.gregs[8] = (long int) ucp->uc_link;
+ 
+   /* Pass address of setcontext in %r9.  */
+-  ucp->uc_mcontext.gregs[9] = (long) &setcontext;
++  ucp->uc_mcontext.gregs[9] = (long int) &setcontext;
+ 
+   /* Set stack pointer.  */
+-  ucp->uc_mcontext.gregs[15] = (long) sp;
++  ucp->uc_mcontext.gregs[15] = (long int) sp;
+ }
+ 
+-asm(".text\n"
+-    ".type __makecontext_ret,@function\n"
+-    "__makecontext_ret:\n"
+-    "      basr  %r14,%r7\n"
+-    "      lr    %r2,%r8\n"
+-    "      br    %r9\n"
+-    ".size __makecontext_ret, .-__makecontext_ret");
++asm (".text\n"
++     ".type __makecontext_ret,@function\n"
++     "__makecontext_ret:\n"
++     "      basr  %r14,%r7\n"
++     "      lr    %r2,%r8\n"
++     "      br    %r9\n"
++     ".size __makecontext_ret, .-__makecontext_ret");
+ 
+ weak_alias (__makecontext, makecontext)
+diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/makecontext.c b/sysdeps/unix/sysv/linux/s390/s390-64/makecontext.c
+index b08f1b4..40ff3ee 100644
+--- a/sysdeps/unix/sysv/linux/s390/s390-64/makecontext.c
++++ b/sysdeps/unix/sysv/linux/s390/s390-64/makecontext.c
+@@ -1,4 +1,4 @@
+-/* Copyright (C) 2001 Free Software Foundation, Inc.
++/* Copyright (C) 2001, 2010 Free Software Foundation, Inc.
+    This file is part of the GNU C Library.
+    Contributed by Martin Schwidefsky (schwidefsky@de.ibm.com).
+ 
+@@ -29,14 +29,14 @@
+    won't work.
+    makecontext sets up a stack and the registers for the
+    user context. The stack looks like this:
+-           size                         offset
++	   size                         offset
+     %r15 ->    +-----------------------+
+-             8 | back chain (zero)     |  0
+-             8 | reserved              |  8
+-           144 | save area for (*func) | 16
+-               +-----------------------+
+-             n | overflow parameters   | 160
+-               +-----------------------+
++	     8 | back chain (zero)     |  0
++	     8 | reserved              |  8
++	   144 | save area for (*func) | 16
++	       +-----------------------+
++	     n | overflow parameters   | 160
++	       +-----------------------+
+    The registers are set up like this:
+      %r2-%r6: parameters 1 to 5
+      %r7    : (*func) pointer
+@@ -54,27 +54,27 @@ void
+ __makecontext (ucontext_t *ucp, void (*func) (void), int argc, ...)
+ {
+   extern void __makecontext_ret (void);
+-  unsigned long *sp;
++  unsigned long int *sp;
+   va_list ap;
+-  int i;
+ 
+-  sp = (unsigned long *) (((unsigned long) ucp->uc_stack.ss_sp
+-			   + ucp->uc_stack.ss_size) & -8L);
++  sp = (unsigned long int *) (((unsigned long int) ucp->uc_stack.ss_sp
++			       + ucp->uc_stack.ss_size) & -8L);
+ 
+   /* Set the return address to trampoline.  */
+-  ucp->uc_mcontext.gregs[14] = (long) __makecontext_ret;
++  ucp->uc_mcontext.gregs[14] = (long int) __makecontext_ret;
+ 
+   /* Set register parameters.  */
+   va_start (ap, argc);
+-  for (i = 0; (i < argc) && (i < 5); i++)
+-    ucp->uc_mcontext.gregs[2+i] = va_arg (ap, long);
++  for (int i = 0; i < argc && i < 5; ++i)
++    ucp->uc_mcontext.gregs[2 + i] = va_arg (ap, long int);
+ 
+   /* The remaining arguments go to the overflow area.  */
+-  if (argc > 5) {
+-    sp -= argc - 5;
+-    for (i = 5; i < argc; i++)
+-      sp[i] = va_arg(ap, long);
+-  }
++  if (argc > 5)
++    {
++      sp -= argc - 5;
++      for (int i = 5; i < argc; ++i)
++	sp[i - 5] = va_arg (ap, long int);
++    }
+   va_end (ap);
+ 
+   /* Make room for the save area and set the backchain.  */
+@@ -82,24 +82,24 @@ __makecontext (ucontext_t *ucp, void (*func) (void), int argc, ...)
+   *sp = 0;
+ 
+   /* Pass (*func) to __start_context in %r7.  */
+-  ucp->uc_mcontext.gregs[7] = (long) func;
++  ucp->uc_mcontext.gregs[7] = (long int) func;
+ 
+   /* Pass ucp->uc_link to __start_context in %r8.  */
+-  ucp->uc_mcontext.gregs[8] = (long) ucp->uc_link;
++  ucp->uc_mcontext.gregs[8] = (long int) ucp->uc_link;
+ 
+   /* Pass address of setcontext in %r9.  */
+-  ucp->uc_mcontext.gregs[9] = (long) &setcontext;
++  ucp->uc_mcontext.gregs[9] = (long int) &setcontext;
+ 
+   /* Set stack pointer.  */
+-  ucp->uc_mcontext.gregs[15] = (long) sp;
++  ucp->uc_mcontext.gregs[15] = (long int) sp;
+ }
+ 
+-asm(".text\n"
+-    ".type __makecontext_ret,@function\n"
+-    "__makecontext_ret:\n"
+-    "      basr  %r14,%r7\n"
+-    "      lgr   %r2,%r8\n"
+-    "      br    %r9\n"
+-    ".size __makecontext_ret, .-__makecontext_ret");
++asm (".text\n"
++     ".type __makecontext_ret,@function\n"
++     "__makecontext_ret:\n"
++     "      basr  %r14,%r7\n"
++     "      lgr   %r2,%r8\n"
++     "      br    %r9\n"
++     ".size __makecontext_ret, .-__makecontext_ret");
+ 
+ weak_alias (__makecontext, makecontext)

Modified: glibc-package/branches/eglibc-2.11/debian/patches/series
===================================================================
--- glibc-package/branches/eglibc-2.11/debian/patches/series	2010-05-24 16:18:37 UTC (rev 4279)
+++ glibc-package/branches/eglibc-2.11/debian/patches/series	2010-05-24 16:39:55 UTC (rev 4280)
@@ -141,6 +141,7 @@
 mips/local-r10k.diff
 mips/submitted-rld_map.diff
 
+s390/cvs-makecontext.diff
 s390/submitted-nexttowardf.diff
 
 sh4/local-fpscr_values.diff
@@ -223,7 +224,7 @@
 any/cvs-malloc_info-init.diff
 any/submitted-stack-guard-quick-randomization.diff
 any/submitted-leading-zero-stack-guard.diff
-any/submitted-stat-issock.diff
+any/cvs-stat-issock.diff
 any/cvs-remove.diff
 any/submitted-nptl-invalid-td.patch
 any/local-gai-rfc1918-scope-global.patch


Reply to: