On 23.08.2019 23:07, Alexander Tormasov via users wrote:
Thank you for information!

Dump of my file show
Program Header:
     PHDR off    0x0000000000000040 vaddr 0x0000000000200040 paddr 
0x0000000000000000 align 2**3
          filesz 0x0000000000000150 memsz 0x0000000000000150 flags r--
   INTERP off    0x000000000012bee2 vaddr 0x000000000112aee2 paddr 
0x000000000112aee2 align 2**0
          filesz 0x000000000000000a memsz 0x000000000000000a flags r--
     LOAD off    0x0000000000001000 vaddr 0x0000000001000000 paddr 
0x0000000001000000 align 2**12
          filesz 0x000000000015c9fc memsz 0x000000000015c9fc flags r-x
     LOAD off    0x000000000015e000 vaddr 0x000000000115d000 paddr 
0x000000000115d000 align 2**12
          filesz 0x0000000000081e9c memsz 0x00000000001112f4 flags rw-
  DYNAMIC off    0x00000000001c0c18 vaddr 0x00000000011bfc18 paddr 
0x00000000011bfc18 align 2**5
          filesz 0x000000000001f284 memsz 0x000000000001f26c flags rw-
EH_FRAME off    0x0000000000156030 vaddr 0x0000000001155030 paddr 
0x0000000001155030 align 2**2
          filesz 0x00000000000079cc memsz 0x00000000000079cc flags r--
Does it mean that real offset in code is
  ip=0xa95b1- 0x1000
like 0xa85b1
Disassembly shows the following:
  10a85b1:       8b 15 69 85 11 00       mov    0x118569(%rip),%edx        # 11c0b20 
<genode_argv+0x260>

Seems that argv is damaged…
While I still try to find exactly which function fail here

You also can try "objdump -S" on your binary, and search for the trap address in the output. This

command should show a disassembly, intermixed with a source code (if it's C/C++, not sure

about Golang). So, you can determine, which function exactly is trapped. And yes, you need to

compile with full debug symbols.


_______________________________________________
Genode users mailing list
[email protected]
https://lists.genode.org/listinfo/users

Reply via email to