Dynamic tracepoints in 4.11.8-rt5
Hi Tom,
I notice this commit appears in linux-rt-devel 4.11.8-rt5 (and it is not in upstream Linux):
003100371 tracing: Add support for dynamic tracepoints
It adds a "bool dynamic" argument to tracepoint_probe_unregister.
I'm trying to figure out why this change is introduced as a new API "dynamic_tracepoint_probe_register()" and by adding a boolean to tracepoint_probe_unregister().
Allowing the user of register API to mixup between dynamic and non-dynamic boolean values for the same tracepoint instance seems fragile.
Given that the "dynamic" nature of this new kind of tracepoint appears to be associated with the tracepoint instance (struct tracepoint), why can't we simply add a "bool dynamic" field to struct tracepoint, so we can deal with this internally within tracepoint.c without exposing this detail in the register API ?
This would also take care of currently diverging module APIs for the GPL-exported symbol tracepoint_unregister() between Linux upstream and linux-rt.
Thanks,
Mathieu
Signature · 3 lines
Mathieu Desnoyers EfficiOS Inc. http://www.efficios.com
Hi Mathieu,
Quoted 17 lines · Mathieu Desnoyers
Hi Tom,
I notice this commit appears in linux-rt-devel 4.11.8-rt5 (and it is not in upstream Linux):
003100371 tracing: Add support for dynamic tracepoints
It adds a "bool dynamic" argument to
tracepoint_probe_unregister.I'm trying to figure out why this change is introduced as a new API "
dynamic_tracepoint_probe_register()" and by adding a boolean totracepoint_probe_unregister().Allowing the user of register API to mixup between dynamic and non-dynamic boolean values for the same tracepoint instance seems fragile.
Quoted 7 lines
Given that the "dynamic" nature of this new kind of tracepoint appears to be associated with the tracepoint instance (struct tracepoint), why can't we simply add a "bool dynamic" field to struct tracepoint, so we can deal with this internally within
tracepoint.cwithout exposing this detail in the register API ?
Yeah, I think that should work - I'm working on an update to these patches and will make that change.
Thanks,
Tom
Quoted 8 lines
This would also take care of currently diverging module APIs for the GPL-exported symbol
tracepoint_unregister()between Linux upstream and linux-rt.Thanks,
Mathieu