aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog26
-rw-r--r--elf/Makefile3
-rw-r--r--fedora/branch.mk4
-rw-r--r--fedora/glibc.spec.in10
-rw-r--r--nptl/ChangeLog7
-rw-r--r--nptl/sysdeps/unix/sysv/linux/alpha/lowlevellock.h4
-rw-r--r--stdlib/bits/stdlib-ldbl.h4
-rw-r--r--sysdeps/sparc/sparc32/sparcv9/sparcv9b/memcpy.S (renamed from sysdeps/sparc/sparc32/sparcv9b/memcpy.S)2
-rw-r--r--sysdeps/sparc/sparc32/sparcv9/sparcv9v/memcpy.S (renamed from sysdeps/sparc/sparc32/sparcv9v/memcpy.S)0
-rw-r--r--sysdeps/sparc/sparc32/sparcv9/sparcv9v/memset.S (renamed from sysdeps/sparc/sparc32/sparcv9v/memset.S)0
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc32/clone.S8
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc64/clone.S25
-rw-r--r--sysdeps/unix/sysv/linux/x86_64/gettimeofday.S2
-rw-r--r--wcsmbs/bits/wchar-ldbl.h4
14 files changed, 58 insertions, 41 deletions
diff --git a/ChangeLog b/ChangeLog
index 31270d220c..232f0b3c79 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,29 @@
+2007-08-16 Jakub Jelinek <jakub@redhat.com>
+
+ * elf/Makefile ($(objpfx)ld.so): Use readelf -s and awk instead of nm -u
+ to check for undefined symbols.
+
+ * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone):
+ If the syscall fails, set errno to the actual returned error number
+ rather than EINVAL.
+ * sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__clone): If
+ arguments are incorrect, set errno to EINVAL, if the syscall
+ fails, set errno to the actual returned error number.
+
+ * stdlib/bits/stdlib-ldbl.h (__strtold_internal): Remove.
+ * wcsmbs/bits/wchar-ldbl.h (__wcstold_internal): Remove.
+
+ * sysdeps/sparc/sparc32/sparcv9b/memcpy.S: Moved to...
+ * sysdeps/sparc/sparc32/sparcv9/sparcv9b/memcpy.S: ... here. New
+ file.
+ (ASI_PNF, ASI_BLK_P): Don't define.
+ * sysdeps/sparc/sparc32/sparcv9v/memcpy.S: Moved to...
+ * sysdeps/sparc/sparc32/sparcv9/sparcv9v/memcpy.S: ... here. New
+ file.
+ * sysdeps/sparc/sparc32/sparcv9v/memset.S: Moved to...
+ * sysdeps/sparc/sparc32/sparcv9/sparcv9v/memset.S: ... here. New
+ file.
+
2007-08-15 Jakub Jelinek <jakub@redhat.com>
* sysdeps/sparc/fpu/fraiseexcpt.c (__feraiseexcept): Fix raising
diff --git a/elf/Makefile b/elf/Makefile
index d1b3c5a1f5..2943acc66b 100644
--- a/elf/Makefile
+++ b/elf/Makefile
@@ -307,7 +307,8 @@ $(objpfx)ld.so: $(objpfx)librtld.os $(ld-map)
$(filter-out $(map-file),$^) $(load-map-file) \
-Wl,-soname=$(rtld-installed-name) -T $@.lds
rm -f $@.lds
- nm -u $@ | cmp -s /dev/null -
+ readelf -s $@ \
+ | awk '($$7 ~ /^UND(|EF)$$/ && $$1 != "0:" && $$4 != "REGISTER") { print; p=1 } END { exit p != 0 }'
# interp.c exists just to get this string into the libraries.
CFLAGS-interp.c = -D'RUNTIME_LINKER="$(slibdir)/$(rtld-installed-name)"' \
diff --git a/fedora/branch.mk b/fedora/branch.mk
index 293333c941..a6a31c8035 100644
--- a/fedora/branch.mk
+++ b/fedora/branch.mk
@@ -3,5 +3,5 @@ glibc-branch := fedora
glibc-base := HEAD
DIST_BRANCH := devel
COLLECTION := dist-f8
-fedora-sync-date := 2007-08-15 20:49 UTC
-fedora-sync-tag := fedora-glibc-20070815T2049
+fedora-sync-date := 2007-08-16 21:21 UTC
+fedora-sync-tag := fedora-glibc-20070816T2121
diff --git a/fedora/glibc.spec.in b/fedora/glibc.spec.in
index 0410094832..dc13a53a20 100644
--- a/fedora/glibc.spec.in
+++ b/fedora/glibc.spec.in
@@ -1,4 +1,4 @@
-%define glibcrelease 10
+%define glibcrelease 11
%define run_glibc_tests 1
%define auxarches i586 i686 athlon sparcv9v sparc64v alphaev6
%define xenarches i686 athlon
@@ -256,8 +256,6 @@ package or when debugging this package.
# memmove. The memcpy implementation below is not tolerant at
# all.
rm -f sysdeps/alpha/alphaev6/memcpy.S
-mv sysdeps/sparc/sparc32/{,sparcv9/}sparcv9b
-mv sysdeps/sparc/sparc32/{,sparcv9/}sparcv9v
find . -type f -size 0 -o -name "*.orig" -exec rm -f {} \;
cat > find_provides.sh <<EOF
@@ -1012,6 +1010,12 @@ rm -f *.filelist*
%endif
%changelog
+* Fri Aug 17 2007 Jakub Jelinek <jakub@redhat.com> 2.6.90-11
+- remove __strtold_internal and __wcstold_internal from ppc*/s390*/sparc*
+ *-ldbl.h headers
+- temporarily backout x86_64 gettimeofday.S changes (#252453)
+- some further sparc, sparc64 and alpha fixes
+
* Wed Aug 15 2007 Jakub Jelinek <jakub@redhat.com> 2.6.90-10
- don't open /etc/ld.so.{cache,preload} with O_NOATIME (#252146)
- s390{,x}, alpha and sparc fixes
diff --git a/nptl/ChangeLog b/nptl/ChangeLog
index 3e4ca2333e..4edb7af9ab 100644
--- a/nptl/ChangeLog
+++ b/nptl/ChangeLog
@@ -1,3 +1,10 @@
+2007-08-16 Jakub Jelinek <jakub@redhat.com>
+
+ * sysdeps/unix/sysv/linux/alpha/lowlevellock.h
+ (__lll_robust_timedlock): Pass private as last argument to
+ __lll_robust_timedlock_wait.
+ (__lll_unlock): Fix a pasto.
+
2007-08-15 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/sparc/internaltypes.h (sparc_new_sem,
diff --git a/nptl/sysdeps/unix/sysv/linux/alpha/lowlevellock.h b/nptl/sysdeps/unix/sysv/linux/alpha/lowlevellock.h
index 4487607bb3..9fa321cb3f 100644
--- a/nptl/sysdeps/unix/sysv/linux/alpha/lowlevellock.h
+++ b/nptl/sysdeps/unix/sysv/linux/alpha/lowlevellock.h
@@ -219,7 +219,7 @@ __lll_robust_timedlock (int *futex, const struct timespec *abstime,
{
int result = 0;
if (atomic_compare_and_exchange_bool_acq (futex, id, 0) != 0)
- result = __lll_robust_timedlock_wait (futex, abstime);
+ result = __lll_robust_timedlock_wait (futex, abstime, private);
return result;
}
#define lll_robust_timedlock(futex, abstime, id, private) \
@@ -229,7 +229,7 @@ __lll_robust_timedlock (int *futex, const struct timespec *abstime,
#define __lll_unlock(futex, private) \
(void) \
({ int *__futex = (futex); \
- ({ int __oldval = atomic_exchange_rel (__futex, 0); \
+ int __oldval = atomic_exchange_rel (__futex, 0); \
if (__builtin_expect (__oldval > 1, 0)) \
lll_futex_wake (__futex, 1, private); \
})
diff --git a/stdlib/bits/stdlib-ldbl.h b/stdlib/bits/stdlib-ldbl.h
index b197c5754d..d48e1f7004 100644
--- a/stdlib/bits/stdlib-ldbl.h
+++ b/stdlib/bits/stdlib-ldbl.h
@@ -1,5 +1,5 @@
/* -mlong-double-64 compatibility mode for <stdlib.h> functions.
- Copyright (C) 2006 Free Software Foundation, Inc.
+ Copyright (C) 2006, 2007 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
@@ -31,8 +31,6 @@ __END_NAMESPACE_C99
__LDBL_REDIR1_DECL (strtold_l, strtod_l)
#endif
-__LDBL_REDIR1_DECL (__strtold_internal, __strtod_internal)
-
#if defined __USE_SVID || defined __USE_XOPEN_EXTENDED
# ifdef __USE_MISC
__LDBL_REDIR1_DECL (qecvt, ecvt)
diff --git a/sysdeps/sparc/sparc32/sparcv9b/memcpy.S b/sysdeps/sparc/sparc32/sparcv9/sparcv9b/memcpy.S
index 1404dead73..61960dce61 100644
--- a/sysdeps/sparc/sparc32/sparcv9b/memcpy.S
+++ b/sysdeps/sparc/sparc32/sparcv9/sparcv9b/memcpy.S
@@ -1,4 +1,2 @@
-#define ASI_PNF 0x82
-#define ASI_BLK_P 0xf0
#define XCC icc
#include <sparc64/sparcv9b/memcpy.S>
diff --git a/sysdeps/sparc/sparc32/sparcv9v/memcpy.S b/sysdeps/sparc/sparc32/sparcv9/sparcv9v/memcpy.S
index 4c05f57bc2..4c05f57bc2 100644
--- a/sysdeps/sparc/sparc32/sparcv9v/memcpy.S
+++ b/sysdeps/sparc/sparc32/sparcv9/sparcv9v/memcpy.S
diff --git a/sysdeps/sparc/sparc32/sparcv9v/memset.S b/sysdeps/sparc/sparc32/sparcv9/sparcv9v/memset.S
index 5e46c7489f..5e46c7489f 100644
--- a/sysdeps/sparc/sparc32/sparcv9v/memset.S
+++ b/sysdeps/sparc/sparc32/sparcv9/sparcv9v/memset.S
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/clone.S b/sysdeps/unix/sysv/linux/sparc/sparc32/clone.S
index 1e099cc97d..a64d8e519b 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc32/clone.S
+++ b/sysdeps/unix/sysv/linux/sparc/sparc32/clone.S
@@ -41,9 +41,9 @@ ENTRY (__clone)
/* sanity check arguments */
orcc %i0,%g0,%g2
- be .Lerror
+ be .Leinval
orcc %i1,%g0,%o1
- be .Lerror
+ be .Leinval
mov %i2,%o0
/* The child_stack is the top of the stack, allocate one
@@ -70,9 +70,11 @@ ENTRY (__clone)
jmpl %i7 + 8, %g0
restore %o0,%g0,%o0
+.Leinval:
+ mov EINVAL, %o0
.Lerror:
call HIDDEN_JUMPTARGET(__errno_location)
- or %g0,EINVAL,%i0
+ mov %o0, %i0
st %i0,[%o0]
jmpl %i7 + 8, %g0
restore %g0,-1,%o0
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/clone.S b/sysdeps/unix/sysv/linux/sparc/sparc64/clone.S
index b1dcc914b0..2bbbd80202 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc64/clone.S
+++ b/sysdeps/unix/sysv/linux/sparc/sparc64/clone.S
@@ -62,33 +62,16 @@ ENTRY (__clone)
/* Do the system call */
set __NR_clone, %g1
ta 0x6d
- bcs,pn %xcc, 99f
+ bcs,pn %xcc, 98f
nop
brnz,pn %o1, __thread_start
nop
jmpl %i7 + 8, %g0
restore %o0, %g0, %o0
-99:
-#ifndef _LIBC_REENTRANT
-#ifdef PIC
- call 1f
- sethi %hi(_GLOBAL_OFFSET_TABLE_-(99b-.)), %l7
-1: or %l7, %lo(_GLOBAL_OFFSET_TABLE_-(99b-.)), %l7
- add %l7, %o7, %l7
- set EINVAL, %i0
- sethi %hi(errno), %g2
- or %g2, %lo(errno), %g2
- st %i0, [%l7+%g2]
-#else
- sethi %hi(errno), %g2
- set EINVAL, %i0
- st %i0, [%g2+%lo(errno)]
-#endif
-#else
- call HIDDEN_JUMPTARGET(__errno_location)
- nop
+99: mov EINVAL, %o0
+98: call HIDDEN_JUMPTARGET(__errno_location)
+ mov %o0, %i0
st %i0, [%o0]
-#endif
jmpl %i7 + 8, %g0
restore %g0,-1,%o0
END(__clone)
diff --git a/sysdeps/unix/sysv/linux/x86_64/gettimeofday.S b/sysdeps/unix/sysv/linux/x86_64/gettimeofday.S
index f618e738b1..c74fc67cac 100644
--- a/sysdeps/unix/sysv/linux/x86_64/gettimeofday.S
+++ b/sysdeps/unix/sysv/linux/x86_64/gettimeofday.S
@@ -28,7 +28,7 @@ ENTRY (__gettimeofday)
/* Align stack. */
sub $0x8, %rsp
cfi_adjust_cfa_offset(8)
-#ifdef SHARED
+#if 0 /* def SHARED */
movq __vdso_gettimeofday(%rip), %rax
PTR_DEMANGLE (%rax)
#else
diff --git a/wcsmbs/bits/wchar-ldbl.h b/wcsmbs/bits/wchar-ldbl.h
index 5e4894567c..56a28d33b9 100644
--- a/wcsmbs/bits/wchar-ldbl.h
+++ b/wcsmbs/bits/wchar-ldbl.h
@@ -1,5 +1,5 @@
/* -mlong-double-64 compatibility mode for <wchar.h> functions.
- Copyright (C) 2006 Free Software Foundation, Inc.
+ Copyright (C) 2006, 2007 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
@@ -48,8 +48,6 @@ __END_NAMESPACE_C99
__LDBL_REDIR1_DECL (wcstold_l, wcstod_l);
#endif
-__LDBL_REDIR1_DECL (__wcstold_internal, __wcstod_internal);
-
#if __USE_FORTIFY_LEVEL > 0 && !defined __cplusplus
__LDBL_REDIR_DECL (__swprintf_chk)
__LDBL_REDIR_DECL (__vswprintf_chk)