Messages in this thread | | | Date | Tue, 21 Apr 2015 07:04:44 -0500 | From | Ron Rechenmacher <> | Subject | Re: [PATCH] tracing: Export key trace event symbols |
| |
Christoph Hellwig wrote on 04/21/15 01:10: > > Which (in-tree) module fails with this? I don't think anyone should > actually register a symbol. >
I see you (Christoph Hellwig) have asked this question in a similar context (see https://patches.linaro.org/28821/). This question does not seem to make sense because: 1) the external module is not registering a _symbol_ but more precisely a tracepoint _function_ as the whole tracepoint system allows for _multiple_ functions to be called for each tracepoint declared in the kernel. 2) It's not the point that an in-tree module would fail. Again, the tracepoint system allows for _multiple_functions_ to be defined/registered for each tracepoint and _in_the_earlier_kernels_(i.e. 3.10.x and many others),_external_modules_could_ _register_ one or more _additional_functions_ to be called.
IF you're specifically saying that external modules should not register additional tracepoint functions, my question would simply be: why do you think this?
To give you an example of the usefulness of continuing to allow this (continuation from earlier kernels): the kernel scheduling has a tracepoint defined; of course a critical operation for any kernel. I use to be able to insert a module which would collect my own statistics on when and what switching was going on on what CPU cores. I can think of many other potential reasons that this would be useful for external modules. To think that tracepoints would only be useful for in-tree development is, perhaps, (not meaning to offend) short sighted.
-- Ron Rechenmacher Engineer Fermi National Accelerator Laboratory Batavia, IL 60510
| |