This is the mail archive of the binutils@sources.redhat.com mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

ld segfault for powerpc-linux with CVS trunk


Hi,

As reported in http://bugs.debian.org/219187/, ld segfaults while
linking hdf5 on powerpc-linux.  I've reproduced this segfault with CVS
trunk; backtrace is below.  The files mentioned in the command line
are available from:

  http://people.debian.org/~troup/binutils/files.tar.gz

[FWIW, this is a regression from 2.14.90.0.6 (...if only to provide a
 rough timeframe)]

-- 
James

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

troup@bruckner:~/hdf5/hdf5-1.6.1/debian/build-serial/src$ gcc -v -shared  .libs/H5.o .libs/H5A.o .libs/H5AC.o .libs/H5B.o .libs/H5D.o .libs/H5Dio.o .libs/H5E.o .libs/H5F.o .libs/H5Fcontig.o .libs/H5Fcompact.o .libs/H5Fistore.o .libs/H5Fseq.o .libs/H5FD.o .libs/H5FDcore.o .libs/H5FDfamily.o .libs/H5FDfphdf5.o .libs/H5FDgass.o .libs/H5FDlog.o .libs/H5FDmpio.o .libs/H5FDmpiposix.o .libs/H5FDmulti.o .libs/H5FDsec2.o .libs/H5FDsrb.o .libs/H5FDstdio.o .libs/H5FDstream.o .libs/H5FL.o .libs/H5FO.o .libs/H5FP.o .libs/H5FPclient.o .libs/H5FPserver.o .libs/H5FS.o .libs/H5G.o .libs/H5Gent.o .libs/H5Gnode.o .libs/H5Gstab.o .libs/H5HG.o .libs/H5HL.o .libs/H5HP.o .libs/H5I.o .libs/H5MF.o .libs/H5MM.o .libs/H5O.o .libs/H5Oattr.o .libs/H5Obogus.o .libs/H5Ocont.o .libs/H5Odtype.o .libs/H5Oefl.o .libs/H5Ofill.o .libs/H5Olayout.o .libs/H5Omtime.o .libs/H5Oname.o .libs/H5Onull.o .libs/H5Opline.o .libs/H5Osdspace.o .libs/H5Oshared.o .libs/H5Ostab.o .libs/H5P.o .libs/H5Pdcpl.o .libs/H5Pdxpl.o .libs/H5Pfapl.o .libs/H5Pfcpl.o .libs/H5Ptest.o .libs/H5R.o .libs/H5RS.o .libs/H5S.o .libs/H5Sall.o .libs/H5Shyper.o .libs/H5Smpio.o .libs/H5Snone.o .libs/H5Spoint.o .libs/H5Sselect.o .libs/H5Stest.o .libs/H5ST.o .libs/H5T.o .libs/H5Tarray.o .libs/H5Tbit.o .libs/H5Tcommit.o .libs/H5Tcompound.o .libs/H5Tconv.o .libs/H5Tcset.o .libs/H5Tenum.o .libs/H5Tfields.o .libs/H5Tfixed.o .libs/H5Tfloat.o .libs/H5Tinit.o .libs/H5Tnative.o .libs/H5Toffset.o .libs/H5Topaque.o .libs/H5Torder.o .libs/H5Tpad.o .libs/H5Tprecis.o .libs/H5Tstrpad.o .libs/H5Tvlen.o .libs/H5TB.o .libs/H5TS.o .libs/H5V.o .libs/H5Z.o .libs/H5Zdeflate.o .libs/H5Zfletcher32.o .libs/H5Zshuffle.o .libs/H5Zszip.o  -lpthread -lz -lm  -Wl,-soname -Wl,libhdf5-1.6.1.so.0 -o .libs/libhdf5-1.6.1.so.0.0.0
Reading specs from /usr/lib/gcc-lib/powerpc-linux/3.3.2/specs
Configured with: ../src/configure -v --enable-languages=c,c++,java,f77,pascal,objc,ada --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-gxx-include-dir=/usr/include/c++/3.3 --enable-shared --with-system-zlib --enable-nls --without-included-gettext --enable-__cxa_atexit --enable-clocale=gnu --enable-java-gc=boehm --enable-java-awt=xlib --enable-objc-gc --disable-multilib powerpc-linux
Thread model: posix
gcc version 3.3.2 (Debian)
 /usr/lib/gcc-lib/powerpc-linux/3.3.2/collect2 --eh-frame-hdr -V -Qy -shared -m elf32ppclinux -o .libs/libhdf5-1.6.1.so.0.0.0 /usr/lib/gcc-lib/powerpc-linux/3.3.2/../../../crti.o /usr/lib/gcc-lib/powerpc-linux/3.3.2/crtbeginS.o -L/usr/lib/gcc-lib/powerpc-linux/3.3.2 -L/usr/lib/gcc-lib/powerpc-linux/3.3.2/../../.. .libs/H5.o .libs/H5A.o .libs/H5AC.o .libs/H5B.o .libs/H5D.o .libs/H5Dio.o .libs/H5E.o .libs/H5F.o .libs/H5Fcontig.o .libs/H5Fcompact.o .libs/H5Fistore.o .libs/H5Fseq.o .libs/H5FD.o .libs/H5FDcore.o .libs/H5FDfamily.o .libs/H5FDfphdf5.o .libs/H5FDgass.o .libs/H5FDlog.o .libs/H5FDmpio.o .libs/H5FDmpiposix.o .libs/H5FDmulti.o .libs/H5FDsec2.o .libs/H5FDsrb.o .libs/H5FDstdio.o .libs/H5FDstream.o .libs/H5FL.o .libs/H5FO.o .libs/H5FP.o .libs/H5FPclient.o .libs/H5FPserver.o .libs/H5FS.o .libs/H5G.o .libs/H5Gent.o .libs/H5Gnode.o .libs/H5Gstab.o .libs/H5HG.o .libs/H5HL.o .libs/H5HP.o .libs/H5I.o .libs/H5MF.o .libs/H5MM.o .libs/H5O.o .libs/H5Oattr.o .libs/H5Obogus.o .libs/H5Ocont.o .libs/H5Odtype.o .libs/H5Oefl.o .libs/H5Ofill.o .libs/H5Olayout.o .libs/H5Omtime.o .libs/H5Oname.o .libs/H5Onull.o .libs/H5Opline.o .libs/H5Osdspace.o .libs/H5Oshared.o .libs/H5Ostab.o .libs/H5P.o .libs/H5Pdcpl.o .libs/H5Pdxpl.o .libs/H5Pfapl.o .libs/H5Pfcpl.o .libs/H5Ptest.o .libs/H5R.o .libs/H5RS.o .libs/H5S.o .libs/H5Sall.o .libs/H5Shyper.o .libs/H5Smpio.o .libs/H5Snone.o .libs/H5Spoint.o .libs/H5Sselect.o .libs/H5Stest.o .libs/H5ST.o .libs/H5T.o .libs/H5Tarray.o .libs/H5Tbit.o .libs/H5Tcommit.o .libs/H5Tcompound.o .libs/H5Tconv.o .libs/H5Tcset.o .libs/H5Tenum.o .libs/H5Tfields.o .libs/H5Tfixed.o .libs/H5Tfloat.o .libs/H5Tinit.o .libs/H5Tnative.o .libs/H5Toffset.o .libs/H5Topaque.o .libs/H5Torder.o .libs/H5Tpad.o .libs/H5Tprecis.o .libs/H5Tstrpad.o .libs/H5Tvlen.o .libs/H5TB.o .libs/H5TS.o .libs/H5V.o .libs/H5Z.o .libs/H5Zdeflate.o .libs/H5Zfletcher32.o .libs/H5Zshuffle.o .libs/H5Zszip.o -lpthread -lz -lm -soname libhdf5-1.6.1.so.0 -lgcc -lc -lgcc /usr/lib/gcc-lib/powerpc-linux/3.3.2/crtsavres.o /usr/lib/gcc-lib/powerpc-linux/3.3.2/crtendS.o /usr/lib/gcc-lib/powerpc-linux/3.3.2/../../../crtn.o
collect2: ld terminated with signal 11 [Segmentation fault]
troup@bruckner:~/hdf5/hdf5-1.6.1/debian/build-serial/src$ 

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

(gdb) bt
#0  0x1004e214 in ppc_elf_relocate_section (output_bfd=0x10127720, info=0x1011bed8, input_bfd=0x10174c20, input_section=0x101a17f4, 
    contents=0x302d6008 "\224!ÿÀ}\b\002¦= ", relocs=0x101a7718, local_syms=0x10aca360, local_sections=0x10acafb0) at elf32-ppc.c:5409
#1  0x1005ef60 in elf_link_input_bfd (finfo=0x7ffff160, input_bfd=0x10174c20) at elflink.h:5028
#2  0x1005b6e0 in bfd_elf32_bfd_final_link (abfd=0x10127720, info=0x1011bed8) at elflink.h:3577
#3  0x1001b42c in ldwrite () at ldwrite.c:565
#4  0x10017d04 in main (argc=125, argv=0x7ffff384) at ldmain.c:474


(gdb) bt full
#0  0x1004e214 in ppc_elf_relocate_section (output_bfd=0x10127720, info=0x1011bed8, input_bfd=0x10174c20, input_section=0x101a17f4, 
    contents=0x302d6008 "\224!ÿÀ}\b\002¦= ", relocs=0x101a7718, local_syms=0x10aca360, local_sections=0x10acafb0) at elf32-ppc.c:5409
        osec = (asection *) 0x10116a20
        indx = 11
        skip = 0
        sec = (asection *) 0x101a1d4c
        r_symndx = 49
        relocation = 0
        branch_bit = 0
        insn = 279628958
        tls_mask = 0
        r = bfd_reloc_ok
        warned = 0
        tls_gd = 0
        addend = 1486856
        sym = (Elf_Internal_Sym *) 0x10aca734
        howto = (const struct reloc_howto_struct *) 0x100fc6e4
        from = 2147479600
        tls_type = 0
        r_type = R_PPC_ADDR16_HA
        h = (struct elf_link_hash_entry *) 0x0
        sym_name = 0x101a0110 ".rodata.cst8"
        unresolved_reloc = 0
        symtab_hdr = (Elf_Internal_Shdr *) 0x1019f87c
        sym_hashes = (struct elf_link_hash_entry **) 0x101a6e48
        htab = (struct ppc_elf_link_hash_table *) 0x10129938
        rel = (Elf_Internal_Rela *) 0x101a9d04
        relend = (Elf_Internal_Rela *) 0x101a9efc
        outrel = {r_offset = 744534, r_info = 175370, r_addend = 1486856}
        loc = (bfd_byte *) 0x3024bcb8 ""
        sreloc = (asection *) 0x1013c244
        local_got_offsets = (bfd_vma *) 0x0
        ret = 1
#1  0x1005ef60 in elf_link_input_bfd (finfo=0x7ffff160, input_bfd=0x10174c20) at elflink.h:5028
        internal_relocs = (Elf_Internal_Rela *) 0x101a7718
        contents = (bfd_byte *) 0x302d6008 "\224!ÿÀ}\b\002¦= "
        relocate_section = (bfd_boolean (*)(bfd *, struct bfd_link_info *, bfd *, asection *, bfd_byte *, Elf_Internal_Rela *, Elf_Internal_Sym *, 
    asection **)) 0x1004c7e8 <ppc_elf_relocate_section>
        output_bfd = (bfd *) 0x10127720
        symtab_hdr = (Elf_Internal_Shdr *) 0x1019f87c
        locsymcount = 56
        extsymoff = 56
        isymbuf = (Elf_Internal_Sym *) 0x10aca360
        isym = (Elf_Internal_Sym *) 0x10aca7c0
        isymend = (Elf_Internal_Sym *) 0x10aca7c0
        pindex = (long int *) 0x10acae80
        ppsection = (asection **) 0x10acb090
        o = (asection *) 0x101a17f4
        bed = (const struct elf_backend_data *) 0x100ff3e8
        emit_relocs = 0
        sym_hashes = (struct elf_link_hash_entry **) 0x101a6e48
#2  0x1005b6e0 in bfd_elf32_bfd_final_link (abfd=0x10127720, info=0x1011bed8) at elflink.h:3577
        dynamic = 1
        emit_relocs = 0
        dynobj = (bfd *) 0x1012fab0
        finfo = {info = 0x1011bed8, output_bfd = 0x10127720, symstrtab = 0x108f62c8, dynsym_sec = 0x101325a4, hash_sec = 0x1013276c, 
  symver_sec = 0x10132474, contents = 0x302d6008 "\224!ÿÀ}\b\002¦= ", external_relocs = 0x10aad108, internal_relocs = 0x10abb618, 
  external_syms = 0x10ac9b28, locsym_shndx = 0x0, internal_syms = 0x10aca360, indices = 0x10acada0, sections = 0x10acafb0, symbuf = 0x10aac8d0, 
  symshndxbuf = 0x0, symbuf_count = 61, symbuf_size = 131, shndxbuf_size = 0}
        o = (asection *) 0x1012912c
        p = (struct bfd_link_order *) 0x10a86970
        sub = (bfd *) 0x10174c20
        max_contents_size = 2194944
        max_external_reloc_size = 58632
        max_internal_reloc_count = 4886
        max_sym_count = 131
        max_sym_shndx_count = 0
        off = 6685916
        elfsym = {st_value = 0, st_size = 0, st_name = 0, st_info = 3 '\003', st_other = 0 '\0', st_shndx = 42}
        i = 43
        symtab_hdr = (Elf_Internal_Shdr *) 0x10127844
        symtab_shndx_hdr = (Elf_Internal_Shdr *) 0x108c5d1c
        symstrtab_hdr = (Elf_Internal_Shdr *) 0x1000aea4
        bed = (const struct elf_backend_data *) 0x100ff3e8
        eoinfo = {failed = 2147480144, localsyms = 267504044, finfo = 0x5}
        merged = 1
        relativecount = 0
        reldyn = (asection *) 0x0
        amt = 524
#3  0x1001b42c in ldwrite () at ldwrite.c:565
No locals.
#4  0x10017d04 in main (argc=125, argv=0x7ffff384) at ldmain.c:474
        emulation = 0x7ffff6a2 "elf32ppclinux"
        start_time = 40000
(gdb)

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

Other info as suggested by the documentation:

$ uname -a
Linux bruckner 2.4.21 #1 Don Aug 28 15:18:52 CEST 2003 ppc GNU/Linux
$ cat /proc/cpuinfo
cpu             : 604r
clock           : ???
revision        : 49.2 (pvr 0009 3102)
bogomips        : 299.00
machine         : PReP Utah (Powerstack II Pro4000)
l2 cache        : 512KiB, parity disabled SRAM:synchronous, pipelined, no parity
$ gcc --version
gcc (GCC) 3.3.2 (Debian)
$ ~/binutils/src/ld/ld-new --version
GNU ld version 2.14.90 20031105

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]