[packages/glibc] - rel 1; some patches were still needed
draenog
draenog at pld-linux.org
Thu Jul 5 16:42:28 CEST 2012
commit 0f2e926c69461c9e92f2050488fbcb9c672b492e
Author: Arkadiusz MiĹkiewicz <arekm at maven.pl>
Date: Thu Jul 5 07:31:58 2012 +0000
- rel 1; some patches were still needed
Changed files:
0055_all_glibc-2.12-static-shared-getpagesize.patch -> 1.4
1070_all_glibc-fadvise64_64.patch -> 1.3
glibc-pr13013.patch -> 1.2
glibc-rh-bug-769421.patch -> 1.2
glibc.spec -> 1.968
..._all_glibc-2.12-static-shared-getpagesize.patch | 340 ---------------------
1070_all_glibc-fadvise64_64.patch | 28 ++
glibc-pr13013.patch | 11 +
glibc-rh-bug-769421.patch | 44 ++-
glibc.spec | 17 +-
5 files changed, 78 insertions(+), 362 deletions(-)
---
diff --git a/1070_all_glibc-fadvise64_64.patch b/1070_all_glibc-fadvise64_64.patch
new file mode 100644
index 0000000..b05c09f
--- /dev/null
+++ b/1070_all_glibc-fadvise64_64.patch
@@ -0,0 +1,28 @@
+ripped from Debian
+
+---
+ sysdeps/unix/sysv/linux/posix_fadvise.c | 13 +++++++++++++
+ 1 file changed, 13 insertions(+)
+
+--- a/sysdeps/unix/sysv/linux/posix_fadvise.c
++++ b/sysdeps/unix/sysv/linux/posix_fadvise.c
+@@ -35,6 +35,19 @@
+ return INTERNAL_SYSCALL_ERRNO (ret, err);
+ return 0;
+ #else
++# ifdef __NR_fadvise64_64
++ INTERNAL_SYSCALL_DECL (err);
++ int ret = INTERNAL_SYSCALL (fadvise64_64, err, 6, fd,
++ __LONG_LONG_PAIR ((long) (offset >> 31),
++ (long) offset),
++ __LONG_LONG_PAIR ((long) (len >> 31),
++ (long) len),
++ advise);
++ if (INTERNAL_SYSCALL_ERROR_P (ret, err))
++ return INTERNAL_SYSCALL_ERRNO (ret, err);
++ return 0;
++# else
+ return ENOSYS;
++# endif
+ #endif
+ }
diff --git a/glibc-pr13013.patch b/glibc-pr13013.patch
index 46893fe..e654fb1 100644
--- a/glibc-pr13013.patch
+++ b/glibc-pr13013.patch
@@ -1,3 +1,14 @@
+https://bugs.gentoo.org/391673
+http://sourceware.org/bugzilla/show_bug.cgi?id=13013
+
+2011-07-21 Aurelien Jarno <aurel32 at debian.org>
+
+ * resolv/res_query.c(__libc_res_nquery): Assign hp and hp2
+ depending n and resplen2 to catch cases where answer
+ equals answerp2.
+
+diff --git a/resolv/res_query.c b/resolv/res_query.c
+index 2f7cfaa..405fa68 100644
--- a/resolv/res_query.c
+++ b/resolv/res_query.c
@@ -122,6 +122,7 @@ __libc_res_nquery(res_state statp,
diff --git a/glibc-rh-bug-769421.patch b/glibc-rh-bug-769421.patch
index 26f6e61..8030133 100644
--- a/glibc-rh-bug-769421.patch
+++ b/glibc-rh-bug-769421.patch
@@ -1,7 +1,31 @@
-diff --git b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S
+http://sourceware.org/ml/libc-alpha/2012-01/msg00002.html
+
+The following patch:
+Has been reported as causing numerous problems in Fedora & Debian. I
+don't think anyone has done any serious analysis of the issue, but the
+patch has been pulled from both distributions because of the
+instability it's introduced.
+
+https://bugzilla.redhat.com/show_bug.cgi?id=769421
+http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=651899
+
+
+commit c5a0802a682dba23f92d47f0f99775aebfbe2539
+Author: Andreas Schwab <schwab at redhat.com>
+Date: Mon Nov 28 13:38:19 2011 +0100
+
+ Handle EAGAIN from FUTEX_WAIT_REQUEUE_PI
+
+2011-11-28 Andreas Schwab <schwab at redhat.com>
+
+ * sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S: Handle
+ EAGAIN from FUTEX_WAIT_REQUEUE_PI.
+ * sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S: Likewise.
+
+diff --git a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S
index 54590b7..53970d7 100644
---- b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S
-+++ a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S
+--- a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S
++++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S
@@ -134,7 +134,6 @@ __pthread_cond_wait:
cmpl $PI_BIT, %eax
jne 18f
@@ -110,18 +134,18 @@ index 54590b7..53970d7 100644
.long .LcallUR-.LSTARTCODE
.long .LENDCODE-.LcallUR
.long 0
-diff --git b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S
+diff --git a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S
index d837d15..7535baa 100644
---- b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S
-+++ a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S
+--- a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S
++++ b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S
@@ -23,7 +23,6 @@
#include <lowlevelcond.h>
#include <tcb-offsets.h>
#include <pthread-pi-defines.h>
-#include <pthread-errnos.h>
+ #include <stap-probe.h>
#include <kernel-features.h>
-
@@ -134,14 +133,11 @@ __pthread_cond_wait:
cmpl $PI_BIT, %eax
jne 61f
@@ -162,7 +186,7 @@ index d837d15..7535baa 100644
-#if cond_lock != 0
- addq $cond_lock, %rdi
-#endif
-- cmpq $-1, dep_mutex-cond_lock(%rdi)
+- LP_OP(cmp) $-1, dep_mutex-cond_lock(%rdi)
- movl $LLL_PRIVATE, %eax
- movl $LLL_SHARED, %esi
- cmovne %eax, %esi
@@ -188,7 +212,7 @@ index d837d15..7535baa 100644
-#if cond_lock != 0
- addq $cond_lock, %rdi
-#endif
-- cmpq $-1, dep_mutex-cond_lock(%rdi)
+- LP_OP(cmp) $-1, dep_mutex-cond_lock(%rdi)
- movl $LLL_PRIVATE, %eax
- movl $LLL_SHARED, %esi
- cmovne %eax, %esi
@@ -200,7 +224,7 @@ index d837d15..7535baa 100644
-93:
- /* Set the rest of SYS_futex args for FUTEX_WAIT_REQUEUE_PI. */
- xorq %r10, %r10
-- movq dep_mutex(%rdi), %r8
+- mov dep_mutex(%rdi), %R8_LP
- leaq cond_futex(%rdi), %rdi
- jmp 90b
-.LcleanupEND2:
diff --git a/glibc.spec b/glibc.spec
index d26e7d3..1568a81 100644
--- a/glibc.spec
+++ b/glibc.spec
@@ -35,7 +35,7 @@ Summary(tr.UTF-8): GNU libc
Summary(uk.UTF-8): GNU libc воŃŃŃŃ
Name: glibc
Version: %{core_version}.0
-Release: 0.1
+Release: 1
Epoch: 6
License: LGPL v2.1+
Group: Libraries
@@ -60,7 +60,7 @@ Patch3: %{name}-crypt-blowfish.patch
Patch4: %{name}-sotruss-sh.patch
Patch5: %{name}-sparc-softfp-gcc.patch
Patch6: %{name}-paths.patch
-
+Patch7: 1070_all_glibc-fadvise64_64.patch
Patch8: %{name}-missing-nls.patch
Patch9: %{name}-java-libc-wait.patch
Patch10: %{name}-info.patch
@@ -84,7 +84,6 @@ Patch30: %{name}-bug-12492.patch
Patch31: %{name}-origin.patch
Patch32: %{name}-Os-fail-workaround.patch
Patch33: 0020_all_glibc-tweak-rfc1918-lookup.patch
-Patch35: 0055_all_glibc-2.12-static-shared-getpagesize.patch
Patch38: 1055_all_glibc-resolv-dynamic.patch
@@ -921,13 +920,12 @@ mv %{name}-ports-%{ports_version} ports
%patch4 -p1
%patch5 -p1
%patch6 -p1
-
+%patch7 -p1
%patch8 -p1
%patch9 -p1
%patch10 -p1
-# CHECK, LIKELY OBSOLETE
-#%patch12 -p1
+%patch12 -p1
%patch14 -p0
%patch15 -p1
%patch16 -p1
@@ -948,14 +946,9 @@ mv %{name}-ports-%{ports_version} ports
%patch32 -p1
%patch33 -p1
-# SHOULD BE OBSOLETE
-#%patch35 -p1
-
%patch38 -p1
-# THIS APPLIES BUT MAKE SURE ITS NEEDED
-# most likely was fixed by 8fdceb2efda8cf724cfc4444af86b5f135ad3172
-# %%patch42 -p1
+%patch42 -p1
# cleanup backups after patching
find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
More information about the test
mailing list