Date: Wed, 10 Aug 2011 13:29:06 +0530 From: Shrikanth Kamath <shrikanth07@gmail.com> To: freebsd-hackers@freebsd.org Subject: DTrace unable to dump typedef'ed argument Message-ID: <CAEOAkMXqWiO6QZQ8qAxH6ToX%2B2Em9mrTLU6h8Nqa=AUmc_LkYg@mail.gmail.com>
next in thread | raw e-mail | index | archive | help
I found this on a FreeBSD 8.1 box...
%dtrace -l -f rtalloc_fib -v
...
Argument Types
args[0]: struct route *
args[1]: (unknown)
The function defined in sys/net/route.c: void rtalloc_fib(struct route
*ro, u_int fibnum)
u_int is typedef unsigned int
I checked the ctfdump for /boot/kernel/kernel and found u_int is a
resolved type.
[14077] FUNC (rtalloc_fib) returns: 29 args: (1335, 5)
Checking the CTF table "5" is found to be a resolved typedef.
<4> INTEGER unsigned int encoding=0x0 offset=0 bits=32
<5> TYPEDEF u_int refers to 4
But since it shows unknown with dtrace -l -f o/p, one cannot directly
use args[1].
Is this a known problem, any fix or workaround?
--
Shrikanth R K
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAEOAkMXqWiO6QZQ8qAxH6ToX%2B2Em9mrTLU6h8Nqa=AUmc_LkYg>
