pie segfaulting with 20070316
Rogelio Serrano
rogelio.serrano at gmail.com
Sat Mar 17 16:01:32 UTC 2007
On 3/17/07, Rogelio Serrano <rogelio.serrano at gmail.com> wrote:
> is this a known problem with the uclibc DL?
>
> this is the gdb trace.
>
> Program received signal SIGSEGV, Segmentation fault.
> 0xb7faca8a in elf_machine_relative (load_off=2147483648,
> rel_addr=2147484652, relative_count=3) at
> ./ldso/ldso/i386/dl-sysdep.h:79
> 79 *reloc_addr += load_off;
> (gdb) bt
> #0 0xb7faca8a in elf_machine_relative (load_off=2147483648,
> rel_addr=2147484652, relative_count=3) at
> ./ldso/ldso/i386/dl-sysdep.h:79
> #1 0xb7fb1521 in _dl_fixup (rpnt=0xb7faa128, now_flag=0) at
> ldso/ldso/dl-elf.c:685
> #2 0xb7faea97 in _dl_get_ready_to_run (tpnt=0x0,
> load_addr=3086659584, auxvt=0xbfaacad8, envp=0xbfaaccdc,
> argv=0xbfaaccd4) at ldso/ldso/ldso.c:803
> #3 0xb7fac9a3 in _dl_start (args=1) at ldso/ldso/dl-startup.c:305
> #4 0xb7fac4f5 in _start () at ldso/ldso/i386/elfinterp.c:294
>
> this is the program:
>
>
> int
> main(void)
> {
> return 0;
> }
The cause is a textrel with a value of 0x0. Look at the
Dynamic section at offset 0x8d4 contains 24 entries:
Tag Type Name/Value
0x00000001 (NEEDED) Shared library: [libssp.so.0]
0x00000001 (NEEDED) Shared library: [libgcc_s.so.1]
0x00000001 (NEEDED) Shared library: [libc.so.0]
0x0000000c (INIT) 0x5a8
0x0000000d (FINI) 0x834
0x00000004 (HASH) 0x110
0x00000005 (STRTAB) 0x378
0x00000006 (SYMTAB) 0x1c8
0x0000000a (STRSZ) 239 (bytes)
0x0000000b (SYMENT) 16 (bytes)
0x00000015 (DEBUG) 0x0
0x00000003 (PLTGOT) 0x19d0
0x00000002 (PLTRELSZ) 32 (bytes)
0x00000014 (PLTREL) REL
0x00000017 (JMPREL) 0x588
0x00000011 (REL) 0x4e0
0x00000012 (RELSZ) 168 (bytes)
0x00000013 (RELENT) 8 (bytes)
0x00000016 (TEXTREL) 0x0
0x6ffffffe (VERNEED) 0x4a0
0x6fffffff (VERNEEDNUM) 2
0x6ffffff0 (VERSYM) 0x468
0x6ffffffa (RELCOUNT) 9
0x00000000 (NULL) 0x0
--
the thing i like with my linux pc is that i can sum up my complaints in 5 items
More information about the uClibc
mailing list