lkml.org 
[lkml]   [2012]   [Dec]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [RFC Patch v1 38/55] ARC: Low level event capture/logging
On Thursday 15 November 2012 05:34 PM, Arnd Bergmann wrote:
> On Thursday 15 November 2012, Vineet Gupta wrote:
>> On Monday 12 November 2012 07:25 PM, Arnd Bergmann wrote:
>>> On Monday 12 November 2012, Vineet.Gupta1@synopsys.com wrote:
>>>> +EXPORT_SYMBOL(take_snap);
>>>> +
>>>> ...
>>>> +EXPORT_SYMBOL(take_snap2);
>>> Where are these functions called?
>> These are called from various parts of ARCH code, such as before
>> handling signal or TLB flush etc.
>>
>>> Shouldn't this all just be part of the perf module?
>> These are for low level ARCH specific event snapshotting. Maybe
>> perf/ftrace already have some of these in the generic code which
>> eventually call the ARCH APIs. Our current perf support is just husk of
>> an implementation. Once we have the full perf / ftrace support this
>> module - except for the even t capture part could just go away.
>> OTOH, I've not seen much usage of this from loadable modules - so if you
>> deem correct, I can even remove the export.
>>
>>> If not, can you make the exports GPL-only?
>> Am I right in understanding that this is more related to discouraging
>> non GPL modules "in general" than having to do with port itself.
> Mostly yes. I understand that there are some reasons why people want
> to mark symbols as generally available, e.g. for standard interfaces
> that have traditionally been available to every module. My rule is
> usually that any newly introduced symbols should be EXPORT_SYMBOL_GPL
> by default, unless there is a (documented) reason to use EXPORT_SYMBOL
> instead. This is particularly true for low-level interfaces like the
> one here.
>
> If you can just remove the export, that is probably the best solution.

Will do !

> On a related note, any global symbol (exported or not) should normally
> have a prefix that identifies the subsystem it belongs to. A global
> identifier like "take_snap" can potentially conflict with symbols in
> other parts of the kernel.

Agreed - this contraption anyways was a quick hack to debug the "rooky"
issues we had initially - things are pretty stable now - so I'm planning
to drop this patch entirely. When we do something like LTTng etc we'll
revisit the low level instrumentation.

Thx,
-Vineet



\
 
 \ /
  Last update: 2012-12-20 08:01    [W:0.132 / U:12.304 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site