|
From: vijay n. <vi...@gm...> - 2012-09-17 08:24:33
|
Hi,
I have an executable whose start address(__executable__start) has been
modified using custom linker script. Valgrind bails out
with the following error.
PROVIDE (__executable_start = 0x00048000); . = 0x00048000 + SIZEOF_HEADERS;
>> linker script for modifying executable start.
valgrind: mmap(0x48000, 251879424) failed in UME with error 22 (Invalid
argument).
valgrind: this can be caused by executables with very large text, data or
bss segments.
Below is the program header details of the executable.
Program Headers:
Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align
PHDR 0x000034 0x00048034 0x00048034 0x000e0 0x000e0 R E 0x4
INTERP 0x000114 0x00048114 0x00048114 0x00013 0x00013 R 0x1
[Requesting program interpreter: /lib/ld-linux.so.2]
LOAD 0x000000 0x00048000 0x00048000 0xf035094 0xf035094 R E
0x1000
LOAD 0xf035094 0x0f07e094 0x0f07e094 0x39f9d48 0x6237198 RW
0x1000
DYNAMIC 0xf08b578 0x0f0d4578 0x0f0d4578 0x000f0 0x000f0 RW 0x4
NOTE 0x000128 0x00048128 0x00048128 0x00020 0x00020 R 0x4
STACK 0x000000 0x00000000 0x00000000 0x00000 0x00000 RWE 0x4
Is it possible to edit configure.in script so that valgrind's memory
mapping doesn't collide with that of my executable ?
Vijay Nag
|