[Haskell-cafe] Examining the Haskell stack (read at your own risk ; -))

Joel Reymont joelr1 at gmail.com
Fri Dec 2 09:02:53 EST 2005


Simon,

You told me a bit about how to examine the Haskell stack by looking  
at R22 on the PowerPC and $ebx on Intel architectures. I looked at  
your .gdbinit but could not figure out which macros are to be used.

The example below is a bit contrived in that I'm freeing the SSL  
context twice, on purpose. I tried getting a disassembler dump using  
the contents of R22 without luck:

(gdb) info registers r22
r22            0x137a3cc        20423628
(gdb) disas 0x137a3cc
No function contains specified address.

This is my stack trace:

Program received signal EXC_BAD_ACCESS, Could not access memory.
Reason: KERN_PROTECTION_FAILURE at address: 0x00000019
0x00568fe0 in sk_pop_free ()
(gdb) where
#0  0x00568fe0 in sk_pop_free ()
#1  0x0059f128 in X509_VERIFY_PARAM_free ()
#2  0x003c4d5c in SSL_free ()
#3  0x000c3254 in r7cH_info ()
#4  0x000ccd04 in schedule (mainThread=0x13f3f18,  
initialCapability=0x578df0) at Schedule.c:932
#5  0x000cdcac in waitThread_ (m=0x1100360, initialCapability=0x0) at  
Schedule.c:2156
#6  0x000cdb90 in scheduleWaitThread (tso=0x13c0000, ret=0x0,  
initialCapability=0x0) at Schedule.c:2050
#7  0x0001ff0c in rts_evalLazyIO (p=0x1ce0c8, ret=0x0) at RtsAPI.c:459
#8  0x0000495c in main (argc=25, argv=0x578df0) at Main.c:104
(gdb) info registers r22
r22            0x137a3cc        20423628
(gdb) disas 0x137a3cc
No function contains specified address.

--
http://wagerlabs.com/







More information about the Haskell-Cafe mailing list