Hi all , I am trying to compile posix testuite on RHLinux using a linker script with MEMORY constraint (see attached linker script). I am getting some problems in generated elf files . ============================================================== objdump -p ../busybox/posixtestsuite/conformance/interfaces/asctime/1-1.test ../busybox/posixtestsuite/conformance/interfaces/asctime/1-1.test: file format elf32-i386 Program Header: LOAD off 0x00001000 vaddr 0x00001000 paddr 0x00001000 align 2**12 filesz 0x00059ed0 memsz 0x0005abf4 flags rwx NOTE off 0x00001000 vaddr 0x00001000 paddr 0x00001000 align 2**2 filesz 0x00000020 memsz 0x00000020 flags r-- STACK off 0x00000000 vaddr 0x00000000 paddr 0x00000000 align 2**2 filesz 0x00000000 memsz 0x00000000 flags rw- ======================================================================= As you will notice in the program header, the offset is 0x1000 and vaddr is also 0x1000 ,I noticed in the elf loader of linux that the generated program header is put at the address (vaddr - offset) which becomes address 0 . Now address 0 is NULL page and is not accessible from user address space. the glibc initialization code accesses this program header resulting in a segmentation fault. (I am using glibc-2.3.3 ld version 2.14.90) Can anybody throw some light on what can be the problem ? With same ld script for other posix testsuite I get correct headers (offset = 0 , vaddr =5b000). ======================================================================= objdump -p ../busybox/posixtestsuite/conformance/interfaces/ctime/1-1.test ../busybox/posixtestsuite/conformance/interfaces/ctime/1-1.test: file format elf32-i386 Program Header: LOAD off 0x00000000 vaddr 0x0005b000 paddr 0x0005b000 align 2**12 filesz 0x0005a2d0 memsz 0x0005aff0 flags rwx NOTE off 0x000007f0 vaddr 0x0005b7f0 paddr 0x0005b7f0 align 2**2 filesz 0x00000020 memsz 0x00000020 flags r-- STACK off 0x00000000 vaddr 0x00000000 paddr 0x00000000 align 2**2 filesz 0x00000000 memsz 0x00000000 flags rw- ======================================================================= Any help (reference to resources on net) or some direction to go about solving this problem will be useful. If some more information is required please do let me know. Thanks & Regards Kshitiz
Attachment:
script.ld
Description: Binary data
_______________________________________________ Redhat-devel-list mailing list Redhat-devel-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/redhat-devel-list