This is the mail archive of the
systemtap@sourceware.org
mailing list for the systemtap project.
Re: access variables within functions
- From: Ananth N Mavinakayanahalli <ananth at in dot ibm dot com>
- To: "Rus-Rebreanu Alin-Florin" <netblock at gmail dot com>
- Cc: systemtap at sourceware dot org
- Date: Mon, 14 Apr 2008 16:30:18 +0530
- Subject: Re: access variables within functions
- References: <88ac2f010804140330y21ab3f2crdeaed08a55b66f7@mail.gmail.com>
- Reply-to: ananth at in dot ibm dot com
On Mon, Apr 14, 2008 at 01:30:48PM +0300, Rus-Rebreanu Alin-Florin wrote:
> Hi,
> I have a problem with accessing a variable using systemtap.
> Let's take for example vfs_read in fs/read_write.c:
> ssize_t vfs_read(file,buf,count,pos){
> ssize_t ret;
> ........more code.....
> return ret;
>
> }
>
> using stap i want to access "ret". Accessing the parameters of the
> function works just fine with "$var".
> I'm using:
> stap -vvv -e 'probe kernel.function("vfs_read@fs/read_write.c:270")
> {printf("%d",$ret)}'
> It doesn't work. Am I missing something?
Do you want $ret to capture the return value of the function or do you
want $ret as an intermediate return value (rw_verify_area() I presume).
If so, you could just do a
probe kernel.function("rw_verify_area").return
{
printf("%d\n", $return)
}
Ananth