[Bug 1075] ARM: Programs linked to shared library segfault

bugzilla at busybox.net bugzilla at busybox.net
Mon Mar 7 17:07:07 UTC 2011


https://bugs.busybox.net/show_bug.cgi?id=1075

--- Comment #9 from Fabrizio Gennari <fabrizio.ge at tiscali.it>  ---
A little more investigation.

fge:~/crosscompiling/uClibc/lib$ arm-linux-objdump -f
libuClibc-0.9.32-rc2-git.so 

libuClibc-0.9.32-rc2-git.so:     file format elf32-littlearm
architecture: arm, flags 0x00000150:
HAS_SYMS, DYNAMIC, D_PAGED
start address 0x000078e0

fge at WX800170:~/crosscompiling/uClibc/lib$ arm-linux-objdump -h
libuClibc-0.9.32-rc2-git.so 

libuClibc-0.9.32-rc2-git.so:     file format elf32-littlearm

Sections:
Idx Name          Size      VMA       LMA       File off  Algn
  0 .hash         000016ec  00000114  00000114  00000114  2**2
                  CONTENTS, ALLOC, LOAD, READONLY, DATA
  1 .dynsym       00003b00  00001800  00001800  00001800  2**2
                  CONTENTS, ALLOC, LOAD, READONLY, DATA
  2 .dynstr       00002096  00005300  00005300  00005300  2**0
                  CONTENTS, ALLOC, LOAD, READONLY, DATA
  3 .rel.dyn      00000300  00007398  00007398  00007398  2**2
                  CONTENTS, ALLOC, LOAD, READONLY, DATA
  4 .rel.plt      000000e0  00007698  00007698  00007698  2**2
                  CONTENTS, ALLOC, LOAD, READONLY, DATA
  5 .plt          00000164  00007778  00007778  00007778  2**2
                  CONTENTS, ALLOC, LOAD, READONLY, CODE
  6 .text         000256a0  000078e0  000078e0  000078e0  2**4
                  CONTENTS, ALLOC, LOAD, READONLY, CODE
  7 .rodata       000029fd  0002cf80  0002cf80  0002cf80  2**2
                  CONTENTS, ALLOC, LOAD, READONLY, DATA
  8 .interp       00000030  0002f980  0002f980  0002f980  2**2
                  CONTENTS, ALLOC, LOAD, READONLY, DATA
  9 .data.rel.ro  000000ec  00037e6c  00037e6c  0002fe6c  2**2
                  CONTENTS, ALLOC, LOAD, DATA
 10 .dynamic      000000a8  00037f58  00037f58  0002ff58  2**2
                  CONTENTS, ALLOC, LOAD, DATA
 11 .got          000000f4  00038000  00038000  00030000  2**2
                  CONTENTS, ALLOC, LOAD, DATA
 12 .data         00000198  000380f4  000380f4  000300f4  2**2
                  CONTENTS, ALLOC, LOAD, DATA
 13 .bss          00003d90  0003828c  0003828c  0003028c  2**2
                  ALLOC
 14 .ARM.attributes 00000010  00000000  00000000  0003028c  2**0
                  CONTENTS, READONLY
 15 .gnu.warning.gets 0000003c  00000000  00000000  0003029c  2**2
                  CONTENTS, READONLY
 16 .gnu.warning.tmpnam 00000038  00000000  00000000  000302d8  2**2
                  CONTENTS, READONLY
 17 .gnu.warning.gethostbyaddr_r 0000003c  00000000  00000000  00030310  2**2
                  CONTENTS, READONLY
 18 .gnu.warning.gethostbyname_r 0000003c  00000000  00000000  0003034c  2**2
                  CONTENTS, READONLY
 19 .gnu.warning.gethostbyaddr 0000003c  00000000  00000000  00030388  2**2
                  CONTENTS, READONLY
 20 .gnu.warning.gethostbyname 0000003c  00000000  00000000  000303c4  2**2
                  CONTENTS, READONLY
 21 .gnu.warning.siggetmask 0000003c  00000000  00000000  00030400  2**2
                  CONTENTS, READONLY
 22 .comment      00000011  00000000  00000000  0003043c  2**0
                  CONTENTS, READONLY

Summary: the start address is just the start of .text section. This may or may
not be right, but feels wrong...

fge:~/crosscompiling/uClibc/lib$ arm-linux-objdump -T
libuClibc-0.9.32-rc2-git.so |grep 78e0
000078e0 l    d  .text    00000000 .text
000078e0 g    DF .text    00000048 brk

It is as if the startup function is brk(). Maybe DL_START() should be called
instead?

-- 
Configure bugmail: https://bugs.busybox.net/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.


More information about the uClibc-cvs mailing list