lkml.org 
[lkml]   [2010]   [Mar]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: 2.6.33 GP fault only when built with tracing
On 03/18/10 17:59, Mathieu Desnoyers wrote:
> * Steven Rostedt (rostedt@goodmis.org) wrote:
>> On Thu, 2010-03-18 at 16:26 -0700, Randy Dunlap wrote:
>>> I can build/boot 2.6.33 with CONFIG_TRACE/TRACING disabled successfully,
>>> but when I enable lots of tracing config options and then boot with
>>> ftrace=nop on the kernel command line, I see a GP fault when the parport &
>>> parport_pc modules are loading/initializing.
>>
>> Do you see it without adding the "ftrace=nop"? The only thing that
>> should do is expand the ring buffer on boot up.
>>
>>>
>>> It happens in drivers/parport/share.c::parport_register_device(), when that
>>> function calls try_module_get().
>>>
>>> If I comment out the trace_module_get() calls in include/linux/module.h,
>>> the kernel boots with no problems.
>>
>>
>> Interesting. Well, trace_module_get() is a TRACE_EVENT tracepoint. But
>> should be disabled here. It may be something to do with DEFINE_TRACE.
>>
>> (added Mathieu to Cc since he wrote that code)
>
> can you try replacing the "local_read(__module_ref_addr(module, cpu))" argument
> with "0" ?

Yes, that boots with no problems.

> Arguments with side-effects are not skipped by the jump over disabled
> instrumentation. This is why we should do that part within the probe declaration
> in the TRACE_EVENT macros.
>
> But if we find out that the problem really is this argument, then it should be
> fixed, because something would be wrong with it (just moving it to TRACE_EVENT
> is not a proper solution).
>
> Thanks,
>
> Mathieu


--
~Randy


\
 
 \ /
  Last update: 2010-03-19 19:27    [W:0.119 / U:0.100 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site