From: Ingo Molnar <mingo@elte.hu>
To: Linus Torvalds <torvalds@linux-foundation.org>,
Steven Rostedt <rostedt@goodmis.org>,
Fr??d??ric Weisbecker <fweisbec@gmail.com>,
Thomas Gleixner <tglx@linutronix.de>
Cc: linux-kernel@vger.kernel.org, "H. Peter Anvin" <hpa@zytor.com>,
Thomas Gleixner <tglx@linutronix.de>,
Borislav Petkov <borislav.petkov@amd.com>,
Andrew Morton <akpm@linux-foundation.org>
Subject: Re: [GIT PULL] x86/cpu changes for v2.6.34
Date: Mon, 1 Mar 2010 09:00:58 +0100 [thread overview]
Message-ID: <20100301080058.GA8049@elte.hu> (raw)
In-Reply-To: <alpine.LFD.2.00.1002281239550.3637@localhost.localdomain>
* Linus Torvalds <torvalds@linux-foundation.org> wrote:
> On Sun, 28 Feb 2010, Linus Torvalds wrote:
> >
> > I haven't bisected this, but something slowed down in bootup on my machine
> > recently.
>
> Hmm. I take that back. It's not consistent, and it's not recent after all.
>
> It comes and goes:
>
> [torvalds@nehalem linux]$ grep "CPU 7 MCA" /var/log/messages-* /var/log/messages | cut -d: -f5-
> [ 0.898396] CPU 7 MCA banks SHD:2 SHD:3 SHD:5 SHD:6 SHD:8
> [ 0.898400] CPU 7 MCA banks SHD:2 SHD:3 SHD:5 SHD:6 SHD:8
> [ 1.596240] CPU 7 MCA banks SHD:2 SHD:3 SHD:5 SHD:6 SHD:8
> [ 0.898394] CPU 7 MCA banks SHD:2 SHD:3 SHD:5 SHD:6 SHD:8
> [ 1.600229] CPU 7 MCA banks SHD:2 SHD:3 SHD:5 SHD:6 SHD:8
> [ 0.898395] CPU 7 MCA banks SHD:2 SHD:3 SHD:5 SHD:6 SHD:8
> [ 0.901211] CPU 7 MCA banks SHD:2 SHD:3 SHD:5 SHD:6 SHD:8
> [ 2.633298] CPU 7 MCA banks SHD:2 SHD:3 SHD:5 SHD:6 SHD:8
> [ 0.898393] CPU 7 MCA banks SHD:2 SHD:3 SHD:5 SHD:6 SHD:8
> [ 0.901210] CPU 7 MCA banks SHD:2 SHD:3 SHD:5 SHD:6 SHD:8
> [ 0.898395] CPU 7 MCA banks SHD:2 SHD:3 SHD:5 SHD:6 SHD:8
> [ 0.898393] CPU 7 MCA banks SHD:2 SHD:3 SHD:5 SHD:6 SHD:8
> [ 0.898393] CPU 7 MCA banks SHD:2 SHD:3 SHD:5 SHD:6 SHD:8
> [ 0.898402] CPU 7 MCA banks SHD:2 SHD:3 SHD:5 SHD:6 SHD:8
> [ 0.901213] CPU 7 MCA banks SHD:2 SHD:3 SHD:5 SHD:6 SHD:8
> [ 0.898392] CPU 7 MCA banks SHD:2 SHD:3 SHD:5 SHD:6 SHD:8
> [ 0.898395] CPU 7 MCA banks SHD:2 SHD:3 SHD:5 SHD:6 SHD:8
> [ 1.601467] CPU 7 MCA banks SHD:2 SHD:3 SHD:5 SHD:6 SHD:8
> [ 0.898401] CPU 7 MCA banks SHD:2 SHD:3 SHD:5 SHD:6 SHD:8
> [ 0.898395] CPU 7 MCA banks SHD:2 SHD:3 SHD:5 SHD:6 SHD:8
> [ 0.898397] CPU 7 MCA banks SHD:2 SHD:3 SHD:5 SHD:6 SHD:8
>
> note how it's pretty consistently at about the 0.89s mark, but then there's
> a _couple_ of times when it's taken rather longer to boot. But the delay is
> always in that CPU bringup phase, because doing the same grep for "CPU 0
> MCA" gives consistently low numbers (0.0005s).
Weird. It seems to be around multiples of .8: 0.8, 1.6, 2.4, with some extra
overhead.
Almost as if some calibration routine or some other busy-loop misses the train
occasionally.
The way i'd go about debugging this is to narrow down the approximate place
the slowdown happens, then enable CONFIG_FUNCTION_TRACER (and disable
CONFIG_DYNAMIC_FTRACE=y, to not have to deal with the dynamic patching
aspects), and do a single-shot tracing session of only that section, on only
one CPU:
if (smp_processor_id() == 7)
ftrace_enabled = 1;
... bootup sequence ...
if (smp_processor_id() == 7)
ftrace_enabled = 0;
And recover the resulting trace from /debug/tracing/trace - it should have the reason
in it plain and simple.
( Unfortunately i'm not 100% sure that setting ftrace_enabled to 1 is enough.
I asked for a simple ad-hoc enable/disable function tracing mechanism _ages_
ago - Steve, Frederic, what happened to that? ftrace_start()/stop() does not
seem to allow that. )
Or you could sprinkle the code with printk's, and see where the overhead
concentrates into. (But printks ca change timings - etc. So can the function
tracer as well ...)
Ingo
next prev parent reply other threads:[~2010-03-01 8:01 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-02-27 15:09 [GIT PULL] x86/cpu changes for v2.6.34 Ingo Molnar
2010-02-27 17:10 ` Arjan van de Ven
2010-02-27 20:03 ` H. Peter Anvin
2010-02-28 20:09 ` Linus Torvalds
2010-02-28 20:45 ` Linus Torvalds
2010-03-01 8:00 ` Ingo Molnar [this message]
2010-03-01 13:17 ` Frederic Weisbecker
2010-03-01 16:47 ` Linus Torvalds
2010-03-01 19:42 ` Steven Rostedt
2010-03-01 22:23 ` Steven Rostedt
2010-03-01 22:24 ` H. Peter Anvin
2010-03-01 19:29 ` Steven Rostedt
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=20100301080058.GA8049@elte.hu \
--to=mingo@elte.hu \
--cc=akpm@linux-foundation.org \
--cc=borislav.petkov@amd.com \
--cc=fweisbec@gmail.com \
--cc=hpa@zytor.com \
--cc=linux-kernel@vger.kernel.org \
--cc=rostedt@goodmis.org \
--cc=tglx@linutronix.de \
--cc=torvalds@linux-foundation.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.