Joachim Worringen wrote:

> However, the printout does not show the function names of my module:
> [EMAIL PROTECTED] # ./kmem_alloc_zerolen.d
> dtrace: script './kmem_alloc_zerolen.d' matched 2 probes
> CPU     ID                    FUNCTION:NAME
>    1  12069                 kmem_alloc:entry
>                0xfffffffff86ca627
>                0xfffffffff86b825b
>                0xfffffffff86ad139
>                sockfs`socket_ioctl+0x2a
>                sockfs`socket_vop_ioctl+0x57
>                genunix`fop_ioctl+0x7b
>                genunix`ioctl+0x174
>                unix`sys_syscall+0x272
> 
> Notes that may or may not be relevant:
> - I have post-processed my module to contain CTF information.
> - The topmost function in my module is called via a function ptr (socket 
> ops ptr)
> - The socket modules are loaded when I open the socket, and unloaded 
> right when it's closed - maybe a race when mapping the addresses to the 
> symbol table?

just a guess:
I think you may be seeing an effect of the unloading: while the stack is 
recorded synchronously (obviously ;-), the mapping to symbolic names 
happens at a later time; if your module is gone by then, there's nothing 
to map.
Can you disable the unloading for test purposes and see what happens?

HTH
Michael
-- 
Michael Schuster        http://blogs.sun.com/recursion
Recursion, n.: see 'Recursion'
_______________________________________________
dtrace-discuss mailing list
[email protected]

Reply via email to