]> www.infradead.org Git - users/jedix/linux-maple.git/commit
Finish the implementation of is-enabled USDT probes.
authorKris Van Hees <kris.van.hees@oracle.com>
Thu, 23 May 2013 14:52:00 +0000 (10:52 -0400)
committerKris Van Hees <kris.van.hees@oracle.com>
Thu, 23 May 2013 14:52:00 +0000 (10:52 -0400)
commitae127d2b21531a2a512325e8df8f523e98fc7e5b
tree1579c27417344b553d4d57372fd6b4b7c574ef22
parent08465d1dcb94de00bf55e79eb4550d96924f69ca
Finish the implementation of is-enabled USDT probes.

This commit completes the implementation of is-enabled USDT probes, i.e. probes
that when fired cause an execution flow change.  This makes it possible (when
using USDT) to encode more complex code sections that are only executed if a
specific USDT probe has been enabled, i.e. when a consumer is listening for
s specific USDT probe.  This is most commonly used for cases where a USDT probe
might require additional computation for one or more of its arguments, and so
it would be too expensive to always do that computation, whether the probe is
enabled or not.  With is-enabled probes, the overhead when DTrace is not used
is negligible (2 NOPs), and when DTrace is in use but the guarded probe is not
enabled, the cost is a single probe firing (without calling dtrace_probe()).

Signed-off-by: Kris Van Hees <kris.van.hees@oracle.com>
dtrace/dtrace_dof.c
dtrace/fasttrap_dev.c