Re: system gets stuck in a lock during boot

From: Justin Mattock
Date: Mon Aug 24 2009 - 15:19:13 EST


On Mon, Aug 24, 2009 at 1:40 AM, Justin P.
Mattock<justinmattock@xxxxxxxxx> wrote:
> Peter Zijlstra wrote:
>>
>> On Mon, 2009-08-24 at 14:13 +0800, Li Zefan wrote:
>>
>>>
>>> Peter Zijlstra wrote:
>>>
>>>>
>>>> On Mon, 2009-08-24 at 10:41 +0800, Li Zefan wrote:
>>>>
>>>>
>>>>>>
>>>>>> @@ -940,7 +940,7 @@ event_create_dir(struct ftrace_event_call *call,
>>>>>> struct dentr
>>>>>>                 entry = trace_create_file("enable", 0644, call->dir,
>>>>>> call,
>>>>>>                                           enable);
>>>>>>
>>>>>> -       if (call->id)
>>>>>> +       if (call->id&&  call->profile_enable)
>>>>>>
>>>>>
>>>>> We do an extra check on ->profile_enable, shouldn't cause bug..
>>>>>
>>>>>
>>>>>>
>>>>>>                 entry = trace_create_file("id", 0444, call->dir, call,
>>>>>>                                           id);
>>>>>>
>>>>>
>>>>> Any way, I don't think this commit does the right thing:
>>>>>
>>>>>   - If CONFIG_EVENT_PROFILE=y, we'll create events/<dir>/<event>/id,
>>>>>     except events/ftrace/<event>/id.
>>>>>
>>>>>   - if CONFIG_EVENT_PROFILE=n, there's no 'id' file at all!
>>>>>
>>>>> I think it's better to skip ftrace/ dir in perf tool code, instead of
>>>>> skipping creating id files in ftrace code.
>>>>>
>>>>
>>>> No, it does do the right thing. Your patch breaks things because not all
>>>> tracepoints are created through TRACE_EVENT() and will thus not have
>>>> their profile_enable/disable hooks set.
>>>>
>>>> By giving them an ID file, there is no way to distinguish good from bad
>>>> tracepoints.
>>>>
>>>>
>>>
>>> But removing the id file from events/ftrace/ might break some ftrace
>>> binary parsers?
>>>
>>> And this commit makes 'id' file disapeared with CONFIG_EVENT_PROFILE=n.
>>>
>>
>> I introduced the id file for EVENT_PROFILE, tough luck if someone else
>> relies on it.
>>
>>
>>>>
>>>> Expempting ftrace is no solid solution, suppose someone else does a
>>>> TRACE_EVENT_FORMAT() tracepoint, how would you know you could use it as
>>>> a profile event source?
>>>>
>>>>
>>>
>>> Agree.
>>>
>>>
>>>>
>>>> The id files really must stay conditional.
>>>>
>>>>
>>>
>>> I don't think it's a good idea to connect it with perfcounter
>>> this way. Wouldn't adding a 'profilable' file more intuitive?
>>>
>>
>> its called: id ;-)
>>
>>
>
> After looking at ps auxZ
> I see xterm as root instead of my user name.
> This gives me enough evidence to throw
> this system away and start over.
>
> sorry for the waste of time.
>
> Justin P. Mattock
>

O.K. I feel better, deleted
my system, and threw in a minimal built system
with only the bare essentials to boot.
(just to make sure things are correct).

unfortunately after building rc6 I'm still hitting
this. really am not sure why this is happening.

--
Justin P. Mattock
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/