[dtrace-discuss] Help: dtrace failed to compile

Brian Xu - Sun Microsystems - Beijing China
2007-06-07T06:18:07Z

Adam Leventhal ??:
> Hi Brian,
>
> It sounds like you have mismached CTF data which is preventing DTrace from
> resolving your reference to the args[] array. You can either compile the
> kernel module so that it''s no uniquifying against genunix or you
can
> use references to arg1 and cast it to the appropriate type.
>
>
Thanks Adam.

The reason is:

After the kernel module is compiled, it should also ctfmerge with the
appropriate genunix.

Thanks again, your clue is quite useful. :-)
Brian
> Adam
>
> On Wed, Jun 06, 2007 at 07:32:41PM +0800, Brian Xu - Sun Microsystems -
Beijing China wrote:
>
>> Hi,
>>
>> I use dtrace fbt provider to trace the arguments to a function in one
kernel module, then after I rebuild that module, why the dtrace script which
works well before rebuilding fails to be compiled. See below:
>>
>> helios(32):> sudo ./scan.d
>> Password:
>> dtrace: failed to compile script ./scan.d: line 5: operands have
>> incompatible types: "priv_info_uint_t" + "int"
>>
>> Line 5 in scan.d:
>>         printf("essid = %.*s\n", ((struct
ieee80211_scanparams *)args[1])->ssid[1],stringof(((struct
ieee80211_scanparams *)args[1])->ssid + 2));
>>
>> Any hints would be appreciated.
>>
>> Thanks in advance,
>> Brian
>>
>> _______________________________________________
>> dtrace-discuss mailing list
>> dtrace-discuss at opensolaris.org
>>
>
>