Debugging without GDB - stack print?

Alexander Tormasov a.tormasov at innopolis.ru
Fri Aug 23 20:55:42 CEST 2019


Hi!
While I am new on genode/sel4, I encounter traditional problem with app debug.

I finally make iso image on my Golang test application. 
I use noux_fork.run as prototype, replacing fork for my test-go:
                <start name="noux" caps="500">
                        <resource name="RAM" quantum="1G"/>
                        <config verbose="yes" stdin="/null" stdout="/log" stderr="/log">
                                <fstab>
                                        <null/> <log/>
                                        <rom name="test-go" />
                                </fstab>
                                <start name="test-go"> </start>
                        </config>
                </start>
  
As usual, it is failed on first start accessing 0 address:
….
virtual address layout of core:
 overall    [0000000000002000,0000000200000000)
 core image [0000000002000000,0000000003805000)
 ipc buffer [0000000003805000,0000000003806000)
 boot_info  [0000000003806000,0000000003808000)
 stack area [0000000040000000,0000000050000000)
….

[init -> noux] arg(0): "test-go"
^M[init -> noux] --- noux started ---
^MWarning: flush page table entries - mapping cache full - PD: init -> noux -> test-go
^MWarning: flush page table entries - mapping cache full - PD: init -> noux -> test-go
^Mno RM attachment (READ pf_addr=0x0 pf_ip=0xa95b1 from pager_object: pd='init -> noux -> test-go' thread='ep') 
^MWarning: invalid signal-context capability
^MWarning: page-fault, pager_object: pd='init -> noux -> test-go' thread='ep' ip=0xa95b1 pf-addr=0x0

Where I can find a map of load of my application? And symbols?
I found only something like test-go file, which I can read using readelf -s…
How to correspond pf_ip=0xa95b1 dress with code?

good idea is ti be able to print a calls stack at some point (may be with abort) - how I can do this?


More information about the users mailing list