On 6/17/15 17:21 , Priyank Sanghavi wrote:
> Hello,
> 
> I am currently working on dtrace on free-bsd. What I want to do is put a 
> probe on uma_zalloc function and quantize its arguments.  But along with that 
> I want to keep a condition to quantize ( or record the readings) only if the 
> stack of that uma_zalloc has a function ( foo ) in it. —— This means, 
> consider the readings of uma_zalloc only if it has come from the function 
> foo. 
> 
> Is there a condition that can do that work?

Just use a thread local variable that tracks when you enter the function
you care about and removes it when you return. eg. if you had a function
called foobar:

fbt::foobar:entry
{
        self->t = 1;
}

fbt::foobar:return
{
        self->t = 0;
}

Then you can use that as a predicate on an enabling of uma_zalloc.

Robert

_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-dtrace
To unsubscribe, send any mail to "[email protected]"

Reply via email to