# DTrace: correct me, if I'm wrong



## alp (Sep 3, 2010)

I've just found out, why I got something like 
	
	



```
/usr/lib/dtrace/psinfo.d", line 37: syntax error near "uid_t"
```

I had following options in config (on i386):


```
options KDTRACE_HOOKS
options DDB_CTG
```
But without 

```
makeoptions DEBUG=-g
```
I received the mentioned above error trying to run any dtrace script (on anything from 7.1 to 9-current). I checked, kernel had ctf info (ctdump showed a lot), but it didn't show uid_t symbol.

I haven't found any mentions about this in Handbook. Correct me, please, if I'm wrong and this is mentioned somewhere or this behavior is not related to this option.


----------



## Zhwazi (Sep 3, 2010)

Are you trying to trace the kernel or something in userland? Userland DTrace isn't supported yet but it's expected very soon. I got the exact same error when trying to run DTrace scripts. I believe that is the reason why.


----------



## alp (Sep 3, 2010)

Zhwazi said:
			
		

> Are you trying to trace the kernel or something in userland? Userland DTrace isn't supported yet but it's expected very soon. I got the exact same error when trying to run DTrace scripts. I believe that is the reason why.



I was trying to trace syscall:::open:entry. So it seems to be not related to userland DTrace support.


----------



## f-andrey (Sep 5, 2010)

I also had this error. I think amd64.

Now dtrace work OK 

```
kernel
> options 	KDTRACE_FRAME		# Ensure frames are compiled in
> options 	KDTRACE_HOOKS		# Kernel DTrace hooks
# uname -a
FreeBSD my_book 9.0-CURRENT FreeBSD 9.0-CURRENT #1 r210171: Sat Jul 17 10:36:58 MSD 2010
andrey@my_book:/usr/obj/home/andrey/src_head/sys/MY_BOOK  amd64
my_book# kldstat | grep dtrace
 6    1 0xffffffff81242000 20b8     dtraceall.ko
 9    9 0xffffffff81253000 15b960   dtrace.ko
```


```
# dtrace -n ":::open:entry" | head -5
dtrace: description ':::open:entry' matched 2 probes
CPU     ID                    FUNCTION:NAME
  1     27                       open:entry 
  1  36912                       open:entry 
  1     27                       open:entry 
  1  36912                       open:entry
```
syscall probe maybe not

```
# dtrace -n "syscall::::" | head -5
dtrace: invalid probe specifier syscall::::: invalid probe description "syscall::::": Overspecified probe description
```


----------

