patches/glibc/2.6.1/210-lll_lock_t.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Tue Aug 02 18:28:10 2011 +0200 (2011-08-02)
changeset 2590 b64cfb67944e
permissions -rw-r--r--
scripts/functions: svn retrieval first tries the mirror for tarballs

The svn download helper looks for the local tarballs dir to see if it
can find a pre-downloaded tarball, and if it does not find it, does
the actual fetch to upstream via svn.

In the process, it does not even try to get a tarball from the local
mirror, which can be useful if the mirror has been pre-populated
manually (or with a previously downloaded tree).

Fake a tarball get with the standard tarball-download helper, but
without specifying any upstream URL, which makes the helper directly
try the LAN mirror.

Of course, if no mirror is specified, no URL wil be available, and
the standard svn retrieval will kick in.

Reported-by: ANDY KENNEDY <ANDY.KENNEDY@adtran.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
     1 Patch provided bu Ioannis E. VENETIS
     2 
     3 Using:
     4 
     5 typedef int lll_lock_t;
     6 
     7 creates problems during compilation. Since glibc 2.7 got rid of the 'typedef' and
     8 uses directly 'int', we do the same here.
     9 
    10 diff -Naur glibc-2.6.1/nptl/allocatestack.c glibc-2.6.1.new/nptl/allocatestack.c
    11 --- glibc-2.6.1/nptl/allocatestack.c	2006-08-23 20:39:47.000000000 +0300
    12 +++ glibc-2.6.1.new/nptl/allocatestack.c	2008-07-27 20:56:19.000000000 +0300
    13 @@ -103,7 +103,7 @@
    14  static size_t stack_cache_actsize;
    15  
    16  /* Mutex protecting this variable.  */
    17 -static lll_lock_t stack_cache_lock = LLL_LOCK_INITIALIZER;
    18 +static int stack_cache_lock = LLL_LOCK_INITIALIZER;
    19  
    20  /* List of queued stack frames.  */
    21  static LIST_HEAD (stack_cache);
    22 diff -Naur glibc-2.6.1/nptl/descr.h glibc-2.6.1.new/nptl/descr.h
    23 --- glibc-2.6.1/nptl/descr.h	2006-09-24 20:10:55.000000000 +0300
    24 +++ glibc-2.6.1.new/nptl/descr.h	2008-07-27 20:54:41.000000000 +0300
    25 @@ -305,10 +305,10 @@
    26    int parent_cancelhandling;
    27  
    28    /* Lock to synchronize access to the descriptor.  */
    29 -  lll_lock_t lock;
    30 +  int lock;
    31  
    32    /* Lock for synchronizing setxid calls.  */
    33 -  lll_lock_t setxid_futex;
    34 +  int setxid_futex;
    35  
    36  #if HP_TIMING_AVAIL
    37    /* Offset of the CPU clock at start thread start time.  */
    38 diff -Naur glibc-2.6.1/nptl/pthread_attr_init.c glibc-2.6.1.new/nptl/pthread_attr_init.c
    39 --- glibc-2.6.1/nptl/pthread_attr_init.c	2004-03-19 01:56:31.000000000 +0200
    40 +++ glibc-2.6.1.new/nptl/pthread_attr_init.c	2008-07-27 20:55:03.000000000 +0300
    41 @@ -27,7 +27,7 @@
    42  
    43  
    44  struct pthread_attr *__attr_list;
    45 -lll_lock_t __attr_list_lock = LLL_LOCK_INITIALIZER;
    46 +int __attr_list_lock = LLL_LOCK_INITIALIZER;
    47  
    48  
    49  int
    50 diff -Naur glibc-2.6.1/nptl/pthreadP.h glibc-2.6.1.new/nptl/pthreadP.h
    51 --- glibc-2.6.1/nptl/pthreadP.h	2006-08-23 20:42:52.000000000 +0300
    52 +++ glibc-2.6.1.new/nptl/pthreadP.h	2008-07-27 20:56:40.000000000 +0300
    53 @@ -143,7 +143,7 @@
    54  
    55  /* Attribute handling.  */
    56  extern struct pthread_attr *__attr_list attribute_hidden;
    57 -extern lll_lock_t __attr_list_lock attribute_hidden;
    58 +extern int __attr_list_lock attribute_hidden;
    59  
    60  /* First available RT signal.  */
    61  extern int __current_sigrtmin attribute_hidden;
    62 diff -Naur glibc-2.6.1/nptl/semaphoreP.h glibc-2.6.1.new/nptl/semaphoreP.h
    63 --- glibc-2.6.1/nptl/semaphoreP.h	2006-05-11 20:08:37.000000000 +0300
    64 +++ glibc-2.6.1.new/nptl/semaphoreP.h	2008-07-27 20:55:42.000000000 +0300
    65 @@ -48,7 +48,7 @@
    66  extern void *__sem_mappings attribute_hidden;
    67  
    68  /* Lock to protect the search tree.  */
    69 -extern lll_lock_t __sem_mappings_lock attribute_hidden;
    70 +extern int __sem_mappings_lock attribute_hidden;
    71  
    72  
    73  /* Initializer for mountpoint.  */
    74 diff -Naur glibc-2.6.1/nptl/sem_open.c glibc-2.6.1.new/nptl/sem_open.c
    75 --- glibc-2.6.1/nptl/sem_open.c	2006-05-11 20:09:43.000000000 +0300
    76 +++ glibc-2.6.1.new/nptl/sem_open.c	2008-07-27 20:55:22.000000000 +0300
    77 @@ -147,7 +147,7 @@
    78  void *__sem_mappings attribute_hidden;
    79  
    80  /* Lock to protect the search tree.  */
    81 -lll_lock_t __sem_mappings_lock attribute_hidden = LLL_LOCK_INITIALIZER;
    82 +int __sem_mappings_lock attribute_hidden = LLL_LOCK_INITIALIZER;
    83  
    84  
    85  /* Search for existing mapping and if possible add the one provided.  */
    86 diff -Naur glibc-2.6.1/nptl/pthread_once.c glibc-2.6.1.new/nptl/pthread_once.c
    87 --- glibc-2.6.1/nptl/pthread_once.c	2002-11-27 00:50:31.000000000 +0200
    88 +++ glibc-2.6.1.new/nptl/pthread_once.c	2008-07-27 20:57:12.000000000 +0300
    89 @@ -22,7 +22,7 @@
    90  
    91  
    92  
    93 -static lll_lock_t once_lock = LLL_LOCK_INITIALIZER;
    94 +static int once_lock = LLL_LOCK_INITIALIZER;
    95  
    96  
    97  int
    98 diff -Naur glibc-2.6.1/nptl/sysdeps/unix/sysv/linux/alpha/lowlevellock.h glibc-2.6.1.new/nptl/sysdeps/unix/sysv/linux/alpha/lowlevellock.h
    99 --- glibc-2.6.1/nptl/sysdeps/unix/sysv/linux/alpha/lowlevellock.h	2006-07-29 08:06:07.000000000 +0300
   100 +++ glibc-2.6.1.new/nptl/sysdeps/unix/sysv/linux/alpha/lowlevellock.h	2008-07-27 20:59:15.000000000 +0300
   101 @@ -230,9 +230,6 @@
   102  /* Our internal lock implementation is identical to the binary-compatible
   103     mutex implementation. */
   104  
   105 -/* Type for lock object.  */
   106 -typedef int lll_lock_t;
   107 -
   108  /* Initializers for lock.  */
   109  #define LLL_LOCK_INITIALIZER		(0)
   110  #define LLL_LOCK_INITIALIZER_LOCKED	(1)
   111 diff -Naur glibc-2.6.1/nptl/sysdeps/unix/sysv/linux/fork.c glibc-2.6.1.new/nptl/sysdeps/unix/sysv/linux/fork.c
   112 --- glibc-2.6.1/nptl/sysdeps/unix/sysv/linux/fork.c	2003-12-21 01:37:13.000000000 +0200
   113 +++ glibc-2.6.1.new/nptl/sysdeps/unix/sysv/linux/fork.c	2008-07-27 21:00:01.000000000 +0300
   114 @@ -183,7 +183,7 @@
   115  	}
   116  
   117        /* Initialize the fork lock.  */
   118 -      __fork_lock = (lll_lock_t) LLL_LOCK_INITIALIZER;
   119 +      __fork_lock = (int) LLL_LOCK_INITIALIZER;
   120      }
   121    else
   122      {
   123 diff -Naur glibc-2.6.1/nptl/sysdeps/unix/sysv/linux/fork.h glibc-2.6.1.new/nptl/sysdeps/unix/sysv/linux/fork.h
   124 --- glibc-2.6.1/nptl/sysdeps/unix/sysv/linux/fork.h	2006-05-15 23:19:43.000000000 +0300
   125 +++ glibc-2.6.1.new/nptl/sysdeps/unix/sysv/linux/fork.h	2008-07-27 20:58:49.000000000 +0300
   126 @@ -26,7 +26,7 @@
   127  extern unsigned long int *__fork_generation_pointer attribute_hidden;
   128  
   129  /* Lock to protect allocation and deallocation of fork handlers.  */
   130 -extern lll_lock_t __fork_lock attribute_hidden;
   131 +extern int __fork_lock attribute_hidden;
   132  
   133  /* Elements of the fork handler lists.  */
   134  struct fork_handler
   135 diff -Naur glibc-2.6.1/nptl/sysdeps/unix/sysv/linux/i386/lowlevellock.h glibc-2.6.1.new/nptl/sysdeps/unix/sysv/linux/i386/lowlevellock.h
   136 --- glibc-2.6.1/nptl/sysdeps/unix/sysv/linux/i386/lowlevellock.h	2006-09-05 17:44:25.000000000 +0300
   137 +++ glibc-2.6.1.new/nptl/sysdeps/unix/sysv/linux/i386/lowlevellock.h	2008-07-27 21:00:19.000000000 +0300
   138 @@ -436,9 +436,6 @@
   139  /* We have a separate internal lock implementation which is not tied
   140     to binary compatibility.  */
   141  
   142 -/* Type for lock object.  */
   143 -typedef int lll_lock_t;
   144 -
   145  /* Initializers for lock.  */
   146  #define LLL_LOCK_INITIALIZER		(0)
   147  #define LLL_LOCK_INITIALIZER_LOCKED	(1)
   148 diff -Naur glibc-2.6.1/nptl/sysdeps/unix/sysv/linux/ia64/lowlevellock.h glibc-2.6.1.new/nptl/sysdeps/unix/sysv/linux/ia64/lowlevellock.h
   149 --- glibc-2.6.1/nptl/sysdeps/unix/sysv/linux/ia64/lowlevellock.h	2006-07-29 08:06:07.000000000 +0300
   150 +++ glibc-2.6.1.new/nptl/sysdeps/unix/sysv/linux/ia64/lowlevellock.h	2008-07-27 20:58:16.000000000 +0300
   151 @@ -223,9 +223,6 @@
   152  /* We have a separate internal lock implementation which is not tied
   153     to binary compatibility.  We can use the lll_mutex_*.  */
   154  
   155 -/* Type for lock object.  */
   156 -typedef int lll_lock_t;
   157 -
   158  extern int lll_unlock_wake_cb (int *__futex) attribute_hidden;
   159  
   160  /* Initializers for lock.  */
   161 diff -Naur glibc-2.6.1/nptl/sysdeps/unix/sysv/linux/powerpc/lowlevellock.h glibc-2.6.1.new/nptl/sysdeps/unix/sysv/linux/powerpc/lowlevellock.h
   162 --- glibc-2.6.1/nptl/sysdeps/unix/sysv/linux/powerpc/lowlevellock.h	2006-07-29 08:06:07.000000000 +0300
   163 +++ glibc-2.6.1.new/nptl/sysdeps/unix/sysv/linux/powerpc/lowlevellock.h	2008-07-27 21:00:36.000000000 +0300
   164 @@ -254,9 +254,6 @@
   165  /* Our internal lock implementation is identical to the binary-compatible
   166     mutex implementation. */
   167  
   168 -/* Type for lock object.  */
   169 -typedef int lll_lock_t;
   170 -
   171  /* Initializers for lock.  */
   172  #define LLL_LOCK_INITIALIZER		(0)
   173  #define LLL_LOCK_INITIALIZER_LOCKED	(1)
   174 diff -Naur glibc-2.6.1/nptl/sysdeps/unix/sysv/linux/register-atfork.c glibc-2.6.1.new/nptl/sysdeps/unix/sysv/linux/register-atfork.c
   175 --- glibc-2.6.1/nptl/sysdeps/unix/sysv/linux/register-atfork.c	2005-12-22 00:17:21.000000000 +0200
   176 +++ glibc-2.6.1.new/nptl/sysdeps/unix/sysv/linux/register-atfork.c	2008-07-27 21:00:55.000000000 +0300
   177 @@ -24,7 +24,7 @@
   178  
   179  
   180  /* Lock to protect allocation and deallocation of fork handlers.  */
   181 -lll_lock_t __fork_lock = LLL_LOCK_INITIALIZER;
   182 +int __fork_lock = LLL_LOCK_INITIALIZER;
   183  
   184  
   185  /* Number of pre-allocated handler entries.  */
   186 diff -Naur glibc-2.6.1/nptl/sysdeps/unix/sysv/linux/s390/lowlevellock.h glibc-2.6.1.new/nptl/sysdeps/unix/sysv/linux/s390/lowlevellock.h
   187 --- glibc-2.6.1/nptl/sysdeps/unix/sysv/linux/s390/lowlevellock.h	2006-07-29 08:06:07.000000000 +0300
   188 +++ glibc-2.6.1.new/nptl/sysdeps/unix/sysv/linux/s390/lowlevellock.h	2008-07-27 21:01:14.000000000 +0300
   189 @@ -309,9 +309,6 @@
   190  /* We have a separate internal lock implementation which is not tied
   191     to binary compatibility.  We can use the lll_mutex_*.  */
   192  
   193 -/* Type for lock object.  */
   194 -typedef int lll_lock_t;
   195 -
   196  /* Initializers for lock.  */
   197  #define LLL_LOCK_INITIALIZER		(0)
   198  #define LLL_LOCK_INITIALIZER_LOCKED	(1)
   199 diff -Naur glibc-2.6.1/nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.h glibc-2.6.1.new/nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.h
   200 --- glibc-2.6.1/nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.h	2006-07-29 08:06:06.000000000 +0300
   201 +++ glibc-2.6.1.new/nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.h	2008-07-27 20:58:00.000000000 +0300
   202 @@ -278,9 +278,6 @@
   203  /* We have a separate internal lock implementation which is not tied
   204     to binary compatibility.  */
   205  
   206 -/* Type for lock object.  */
   207 -typedef int lll_lock_t;
   208 -
   209  /* Initializers for lock.  */
   210  #define LLL_LOCK_INITIALIZER		(0)
   211  #define LLL_LOCK_INITIALIZER_LOCKED	(1)
   212 diff -Naur glibc-2.6.1/nptl/sysdeps/unix/sysv/linux/sparc/lowlevellock.h glibc-2.6.1.new/nptl/sysdeps/unix/sysv/linux/sparc/lowlevellock.h
   213 --- glibc-2.6.1/nptl/sysdeps/unix/sysv/linux/sparc/lowlevellock.h	2006-07-29 08:06:06.000000000 +0300
   214 +++ glibc-2.6.1.new/nptl/sysdeps/unix/sysv/linux/sparc/lowlevellock.h	2008-07-27 20:59:39.000000000 +0300
   215 @@ -237,9 +237,6 @@
   216  /* We have a separate internal lock implementation which is not tied
   217     to binary compatibility.  We can use the lll_mutex_*.  */
   218  
   219 -/* Type for lock object.  */
   220 -typedef int lll_lock_t;
   221 -
   222  extern int lll_unlock_wake_cb (int *__futex) attribute_hidden;
   223  
   224  /* Initializers for lock.  */
   225 diff -Naur glibc-2.6.1/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.h glibc-2.6.1.new/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.h
   226 --- glibc-2.6.1/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.h	2006-09-05 17:45:34.000000000 +0300
   227 +++ glibc-2.6.1.new/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.h	2008-07-27 20:58:33.000000000 +0300
   228 @@ -446,9 +446,6 @@
   229  /* We have a separate internal lock implementation which is not tied
   230     to binary compatibility.  */
   231  
   232 -/* Type for lock object.  */
   233 -typedef int lll_lock_t;
   234 -
   235  /* Initializers for lock.  */
   236  #define LLL_LOCK_INITIALIZER		(0)
   237  #define LLL_LOCK_INITIALIZER_LOCKED	(1)