systemtap returntimeofday_s and some questions

Hi gurus,
could you please explain few questions about systemtap.

1st

seems gettimeofday_s() always returns 0

stap -ve 'probe timer.s(4){ printf("%d ", gettimeofday_s()) }'

returns 0 0 0 ... also gettimeofday_ms gettimeofday_ns

When I am trying to investigate what is going on issuing second commnat paraller to first one

stap -ve 'probe kernel.function("*gettimeofday*") { printf("%d\t%s\n",pid(),execname()); }'  

it returns various PID and execs but neither belongs to stap
3rd command also issued paraller to 1st

stap -ve 'probe kprobe.function("*gettimeofday*") { printf("%d\t%s\n",pid(),execname()); }''  

seems it goes throught 5 phases (compiles and loaded into kernel) - but prints nothing just: WARNING: probe registration error (symbol not found)

the date command runs normally

[root@fedora ~]# date
Sat Mar 26 10:30:10 CET 2011

What is wrong with gettimeofday ???

2nd

I am trying to trace system calls per process with following code

stap -ve 'probe syscall.open {if (execname()=="ping") { printf("execname(): %s, pid(): %d, argstr: %s, filename: %s, name: %s\n", execname(), pid(), argstr, filename, name) } }'

can be process tracd according to execname() + PATH containing binary - the equivalent of /proc/$PID/exe

3rd

according man stap the -L option should be the used to get possible variables.

[root@fedora ~]# stap -L 'syscall.open'
syscall.open name:string filename:string flags:long mode:long argstr:string $filename:char const* $flags:int $mode:int $ret:long int

works as expected

Now, how to know which variables can be used in all library calls ?

stap -vL 'kernel.function("*")' > kernel.functions

did not returns anything why

Also can somebody explain those variables with $ (target variables) They are those which can be used in source code of app ?

4nd

where are described functions that can be used with stap ? Those in man stapfuncs ?
and tapsets are those in tapset refference ?

Many thanks all

gettimeofday

See the syntax in the link provided above : a pointer to a timeval structure should be specified as first argument to store the result