Carlo Kok via llvm-dev
2016-Jun-07 07:18 UTC
[llvm-dev] lld/x86_64 linux elf invalid link_map
I'm having a curious issue with LLD/x86_64 linux/elf (Ubuntu 14.04); Where the l_addr of the link_map is invalid when linked with lld, but is fine with gnu ld. I'm using the libgc (boehm) code which when initializing reads the DYNAMIC/DEBUG link_map data, and crashes because the l_addr field has value out of readable memory. The strange this is that it happens only on some linux systems even though they're the same ubuntu version. My question is, what could possibly cause this, where can I start looking? -- Carlo Kok
Rafael EspĂndola via llvm-dev
2016-Jun-07 18:28 UTC
[llvm-dev] lld/x86_64 linux elf invalid link_map
On 7 June 2016 at 03:18, Carlo Kok via llvm-dev <llvm-dev at lists.llvm.org> wrote:> I'm having a curious issue with LLD/x86_64 linux/elf (Ubuntu 14.04); Where > the l_addr of the link_map is invalid when linked with lld, but is fine with > gnu ld. > > I'm using the libgc (boehm) code which when initializing reads the > DYNAMIC/DEBUG link_map data, and crashes because the l_addr field has value > out of readable memory. The strange this is that it happens only on some > linux systems even though they're the same ubuntu version. > > My question is, what could possibly cause this, where can I start looking?Hard to tell just from the description. If you can shore the testcase, just pass --reproduce foo to ld.lld and it will create a cpio file that you can put somewhere and refer from a bugzilla Cheers, Rafael
Carlo Kok via llvm-dev
2016-Jun-07 19:54 UTC
[llvm-dev] lld/x86_64 linux elf invalid link_map
On 2016-06-07 20:28, Rafael EspĂndola wrote:> On 7 June 2016 at 03:18, Carlo Kok via llvm-dev <llvm-dev at lists.llvm.org> wrote: >> I'm having a curious issue with LLD/x86_64 linux/elf (Ubuntu 14.04); Where >> the l_addr of the link_map is invalid when linked with lld, but is fine with >> gnu ld. >> >> I'm using the libgc (boehm) code which when initializing reads the >> DYNAMIC/DEBUG link_map data, and crashes because the l_addr field has value >> out of readable memory. The strange this is that it happens only on some >> linux systems even though they're the same ubuntu version. >> >> My question is, what could possibly cause this, where can I start looking? > > Hard to tell just from the description. If you can shore the testcase, > just pass --reproduce foo to ld.lld and it will create a cpio file > that you can put somewhere and refer from a bugzilla >logged as https://llvm.org/bugs/show_bug.cgi?id=28040 (couldn't attach the cpio file, it's 5mb and it accepts up to 1mb). is there anything else i can provide? -- Carlo Kok RemObjects Software
Apparently Analagous Threads
- [lld] elf linker creates undefined empty symbol
- [LLVMdev] LLVM C bindings and Boehm GC
- [lld] elf linker creates undefined empty symbol
- [LLVMdev] Boehm GC + static variables?
- Reducing code size of Position Independent Executables (PIE) by shrinking the size of dynamic relocations section