BZ#2421 - removing duplicate probe handlers

Frank Ch. Eigler fche@redhat.com
Tue Aug 1 22:49:00 GMT 2006


Hi -

On Tue, Aug 01, 2006 at 01:36:38PM -0500, David Smith wrote:

> [...]  As far as probes go, here I ran into conceptual problems.
> [...] The way the code generation currently works, it isn't going to
> be easy to merge a timer probe with a dwarf_derived_probe for
> example - all the needed information won't be there.  [...]  So, if
> we merge a begin probe and an end probe together, we're going to end
> up with either 2 begin probes or 2 end probes.

Maybe what we need is a slightly different representation of merging
here.  What we want is not to eliminate all those derived_probes, but
rather to reuse the code generated for identical ->body trees.  It is
those trees that are translated in c_unparser::emit_probe.  That may
be the perfect place to detect/handle probe-level duplication.
(Instead of emitting new function body that duplicates one already
seen, it could emit a call to the first copy instead.)

- FChE



More information about the Systemtap mailing list