Bug#354241: libc6: Dynamic loader doesn't support R_PARISC_PLABEL21L and R_PARISC_PLABEL14R
Package: libc6
Version: 2.3.5-13
Severity: normal
The following two fails occur in the CVS binutils testsuite:
Running /home/dave/binutils-2.16.91/src/ld/testsuite/ld-pie/pie.exp ...
gcc -L/home/dave/binutils-2.16.91/objdir/./ld -pie
/home/dave/binutils-2.16.91/s
rc/ld/testsuite/ld-pie/pie.c -o tmpdir/pie
gcc -B/home/dave/binutils-2.16.91/objdir/ld/tmpdir/gas/
-I/home/dave/binutils-2
.16.91/src/ld/testsuite/ld-pie -g -O2
-L/home/dave/binutils-2.16.91/objdir/./l
d -c -g -O2 -fPIC -c
/home/dave/binutils-2.16.91/src/ld/testsuite/ld-pie/weakund
ef.c -o tmpdir/weakundef.o
gcc -L/home/dave/binutils-2.16.91/objdir/./ld
-B/home/dave/binutils-2.16.91/objd
ir/ld/tmpdir/ld/ -L/home/dave/opt/gnu/hppa-linux/lib
-L/home/dave/opt/gnu/lib -L
/usr/local/lib -L/lib -L/usr/lib -o tmpdir/weakundef
-L/home/dave/binutils-2.16
.91/src/ld/testsuite/ld-pie -pie tmpdir/weakundef.o
Running: tmpdir/weakundef > tmpdir/weakundef.out
tmpdir/weakundef: error while loading shared libraries: unexpected reloc
type 0x
42
FAIL: weak undefined
gcc -B/home/dave/binutils-2.16.91/objdir/ld/tmpdir/gas/
-I/home/dave/binutils-2
.16.91/src/ld/testsuite/ld-pie -g -O2
-L/home/dave/binutils-2.16.91/objdir/./l
d -c -g -O2 -fPIC -c
/home/dave/binutils-2.16.91/src/ld/testsuite/ld-pie/weakund
ef-data.c -o tmpdir/weakundef-data.o
gcc -L/home/dave/binutils-2.16.91/objdir/./ld
-B/home/dave/binutils-2.16.91/objd
ir/ld/tmpdir/ld/ -L/home/dave/opt/gnu/hppa-linux/lib
-L/home/dave/opt/gnu/lib -L
/usr/local/lib -L/lib -L/usr/lib -o tmpdir/weakundef-data
-L/home/dave/binutils
-2.16.91/src/ld/testsuite/ld-pie -pie tmpdir/weakundef-data.o
Running: tmpdir/weakundef-data > tmpdir/weakundef-data.out
tmpdir/weakundef-data: error while loading shared libraries: unexpected
reloc ty
pe 0x42
FAIL: weak undefined data
This is the link for the first fail:
/home/dave/binutils-2.16.91/objdir/ld/tmpdir/ld/ld --eh-frame-hdr
-dynamic-linke
r /lib/ld.so.1 -pie -o tmpdir/weakundef
/usr/lib/gcc/hppa-linux-gnu/4.0.3/../../
../Scrt1.o /usr/lib/gcc/hppa-linux-gnu/4.0.3/../../../crti.o
/usr/lib/gcc/hppa-l
inux-gnu/4.0.3/crtbeginS.o -L/home/dave/binutils-2.16.91/objdir/./ld
-L/home/dav
e/opt/gnu/hppa-linux/lib -L/home/dave/opt/gnu/lib -L/usr/local/lib
-L/lib -L/usr
/lib -L/home/dave/binutils-2.16.91/src/ld/testsuite/ld-pie
-L/home/dave/binutils
-2.16.91/objdir/ld/tmpdir/ld -L/usr/lib/gcc/hppa-linux-gnu/4.0.3
-L/usr/lib/gcc/
hppa-linux-gnu/4.0.3 -L/usr/lib/gcc/hppa-linux-gnu/4.0.3/../../..
tmpdir/weakund
ef.o -v -lgcc --as-needed -lgcc_s --no-as-needed -lc -lgcc --as-needed
-lgcc_s -
-no-as-needed /usr/lib/gcc/hppa-linux-gnu/4.0.3/crtendS.o
/usr/lib/gcc/hppa-linu
x-gnu/4.0.3/../../../crtn.o
GNU ld version 2.16.91 20060224
The problematic relocations come from here:
dave@gsyprf11:~/binutils-2.16.91/objdir/ld$ objdump -r
/usr/lib/Scrt1.o|less
/usr/lib/Scrt1.o: file format elf32-hppa-linux
RELOCATION RECORDS FOR [.text]:
OFFSET TYPE VALUE
00000000 R_PARISC_PLABEL21L main
00000004 R_PARISC_PLABEL14R main
00000010 R_PARISC_PLABEL21L __libc_csu_init
00000014 R_PARISC_PLABEL14R __libc_csu_init
00000018 R_PARISC_PLABEL21L __libc_csu_fini
0000001c R_PARISC_PLABEL14R __libc_csu_fini
I believe that a patch was submitted by Carlos O'Donell to fix this bug.
-- System Information:
Debian Release: testing/unstable
APT prefers testing
APT policy: (650, 'testing'), (90, 'unstable')
Architecture: hppa (parisc64)
Shell: /bin/sh linked to /bin/bash
Kernel: Linux 2.6.13-pa1
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)
-- no debconf information
Reply to: