From: "Justin P. Mattock" <justinmattock@gmail.com>
To: Li Zefan <lizf@cn.fujitsu.com>
Cc: Peter Zijlstra <peterz@infradead.org>,
Steven Rostedt <rostedt@goodmis.org>,
Frederic Weisbecker <fweisbec@gmail.com>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
Ingo Molnar <mingo@elte.hu>
Subject: Re: system gets stuck in a lock during boot
Date: Sun, 23 Aug 2009 23:49:09 -0700 [thread overview]
Message-ID: <4A9237E5.9050601@gmail.com> (raw)
In-Reply-To: <4A922F82.9080000@cn.fujitsu.com>
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.
>
>
>> 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?
>
>
>> Aside from that, you only add #ifdef fuzz back which with his config is
>> moot, and shouldn't result in anything but a slightly bigger structure
>> to begin with.
>>
>>
>
> Yeah, actually I still fail to see where the bug is, maybe
> the commit that Justin bisected down is not the real culprit..
>
>
>
FWIW, here is the git bisect log:
git bisect start
# bad: [6c30c53fd5ae6a99a23ad78e90c428d2c8ffb07f] Merge branch
'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ryusuke/nilfs2
git bisect bad 6c30c53fd5ae6a99a23ad78e90c428d2c8ffb07f
# good: [b600ffaebcc4791add19e04306f0478a963abe71] Merge branch
'irq-fixes-for-linus' of
git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
git bisect good b600ffaebcc4791add19e04306f0478a963abe71
# good: [ae83060026537885fd23737af161fee8afd04f4b] Merge
git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6
git bisect good ae83060026537885fd23737af161fee8afd04f4b
# bad: [b637dc0dba6a243da2c74f5d02b42ba5eeb9425e] Merge branch
'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6
git bisect bad b637dc0dba6a243da2c74f5d02b42ba5eeb9425e
# bad: [cf7fdd57f978d40ceb9a0f58a25f5cf9c84d6f33] USB: fix oops on
disconnect in cdc-acm
git bisect bad cf7fdd57f978d40ceb9a0f58a25f5cf9c84d6f33
# good: [131f7340b4f93f9a4a8e5a65abbd352b34d0ee08] Merge branch
'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6
git bisect good 131f7340b4f93f9a4a8e5a65abbd352b34d0ee08
# good: [c0c60c4b9ab45bb02b20796401dd6a90770fd0ee] ARM: 5639/1: arm:
clkdev.c should include <linux/clk.h>
git bisect good c0c60c4b9ab45bb02b20796401dd6a90770fd0ee
# bad: [da758ddede96dd850945d3417ff75209a666ba0d] Merge branch
'perfcounters-fixes-for-linus' of
git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
git bisect bad da758ddede96dd850945d3417ff75209a666ba0d
# good: [389623fef0e8b088f293c437d3b7094fe82349fd] Merge
git://git.infradead.org/mtd-2.6
git bisect good 389623fef0e8b088f293c437d3b7094fe82349fd
# bad: [af6af30c0fcd77e621638e53ef8b176bca8bd3b4] ftrace: Fix
perf-tracepoint OOPS
git bisect bad af6af30c0fcd77e621638e53ef8b176bca8bd3b4
# good: [2cdbc46d7b2cb0acb68c3ecad93b000552121fa6] perf: Auto-detect libbfd
git bisect good 2cdbc46d7b2cb0acb68c3ecad93b000552121fa6
# good: [386c0b702b1ea81c0f54f5c9832a3d4a52270f14] perf report: Add
missing command line options to man page
git bisect good 386c0b702b1ea81c0f54f5c9832a3d4a52270f14
all I know is with 2.6.31-rc5 booted fine, as soon I loaded 2.6.31-rc6
I hit this stuckage(I can write it manually down if you need it,
seems ohci1394_dma gets a panic).
Justin P. Mattock
next prev parent reply other threads:[~2009-08-24 6:48 UTC|newest]
Thread overview: 62+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-08-13 15:42 Justin P. Mattock
2009-08-18 10:49 ` Frederic Weisbecker
2009-08-18 16:09 ` Steven Rostedt
2009-08-18 16:24 ` Justin Mattock
2009-08-18 19:57 ` Steven Rostedt
2009-08-18 20:06 ` Justin P. Mattock
2009-08-18 23:29 ` Steven Rostedt
2009-08-18 23:55 ` Justin P. Mattock
2009-08-19 0:23 ` Justin P. Mattock
2009-08-19 0:31 ` Steven Rostedt
2009-08-19 1:18 ` Justin P. Mattock
2009-08-19 1:10 ` Li Zefan
2009-08-20 5:51 ` Justin P. Mattock
2009-08-22 7:48 ` Justin P. Mattock
2009-08-24 2:41 ` Li Zefan
2009-08-24 3:07 ` Justin P. Mattock
2009-08-24 5:58 ` Peter Zijlstra
2009-08-24 6:13 ` Li Zefan
2009-08-24 6:49 ` Justin P. Mattock [this message]
2009-08-24 6:55 ` Peter Zijlstra
2009-08-24 7:54 ` Justin P. Mattock
2009-08-24 8:40 ` Justin P. Mattock
2009-08-24 19:19 ` Justin Mattock
2009-08-25 5:50 ` Peter Zijlstra
2009-08-25 6:04 ` Li Zefan
2009-08-25 6:21 ` Peter Zijlstra
2009-08-25 8:59 ` Ingo Molnar
2009-08-26 0:22 ` Justin P. Mattock
2009-08-26 7:33 ` Ingo Molnar
2009-08-26 14:42 ` Justin P. Mattock
2009-09-07 21:49 ` Justin Mattock
2009-10-02 21:12 ` Jason Baron
2009-10-04 17:41 ` Ingo Molnar
2009-10-05 0:10 ` Justin Mattock
2009-10-06 1:00 ` Justin P. Mattock
2009-10-06 1:18 ` Steven Rostedt
2009-10-06 2:01 ` Justin P. Mattock
2009-10-06 14:31 ` Jason Baron
2009-10-06 15:12 ` Justin P. Mattock
2009-10-06 1:24 ` Steven Rostedt
2009-10-06 20:32 ` Jason Baron
2009-10-06 22:30 ` Justin P. Mattock
2009-10-07 2:02 ` Steven Rostedt
2009-10-07 2:42 ` Justin P. Mattock
2009-10-07 13:00 ` Steven Rostedt
2009-10-07 14:53 ` Justin P. Mattock
2009-10-07 15:11 ` Steven Rostedt
2009-10-07 15:52 ` Justin P. Mattock
2009-10-07 16:06 ` Steven Rostedt
2009-10-07 17:47 ` Justin P. Mattock
2009-10-07 18:45 ` Justin P. Mattock
2009-10-07 18:55 ` Steven Rostedt
2009-10-07 19:08 ` Justin P. Mattock
2009-10-12 10:17 ` Ingo Molnar
2009-10-12 18:16 ` Justin P. Mattock
2009-10-07 14:30 ` Jason Baron
2009-10-07 14:40 ` Mathieu Desnoyers
2009-10-07 14:55 ` Steven Rostedt
2009-10-07 15:05 ` Mathieu Desnoyers
2009-10-07 15:14 ` Steven Rostedt
2009-08-24 19:42 ` Steven Rostedt
2009-08-24 23:34 ` Justin Mattock
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4A9237E5.9050601@gmail.com \
--to=justinmattock@gmail.com \
--cc=fweisbec@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=lizf@cn.fujitsu.com \
--cc=mingo@elte.hu \
--cc=peterz@infradead.org \
--cc=rostedt@goodmis.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Powered by JetHome