Re: [tip:perfcounters/core] x86, perf_counter, bts: Optimize BTSoverflow handling

From: Ingo Molnar
Date: Mon Sep 21 2009 - 03:32:59 EST



* Metzger, Markus T <markus.t.metzger@xxxxxxxxx> wrote:

> >-----Original Message-----
> >From: tip tree robot [mailto:bounces.tip@xxxxxxxxxxxxxxxx] On Behalf Of tip-bot for Markus Metzger
> >Sent: Friday, September 18, 2009 9:19 PM
> >To: linux-tip-commits@xxxxxxxxxxxxxxx
> >Cc: linux-kernel@xxxxxxxxxxxxxxx; hpa@xxxxxxxxx; mingo@xxxxxxxxxx; a.p.zijlstra@xxxxxxxxx; Metzger,
> >Markus T; tglx@xxxxxxxxxxxxx; mingo@xxxxxxx
> >Subject: [tip:perfcounters/core] x86, perf_counter, bts: Optimize BTS overflow handling
> >
> >Commit-ID: 5622f295b53fb60dbf9bed3e2c89d182490a8b7f
> >Gitweb: http://git.kernel.org/tip/5622f295b53fb60dbf9bed3e2c89d182490a8b7f
> >Author: Markus Metzger <markus.t.metzger@xxxxxxxxx>
> >AuthorDate: Tue, 15 Sep 2009 13:00:23 +0200
> >Committer: Ingo Molnar <mingo@xxxxxxx>
> >CommitDate: Fri, 18 Sep 2009 20:43:20 +0200
> >
> >x86, perf_counter, bts: Optimize BTS overflow handling
> >
> >Draining the BTS buffer on a buffer overflow interrupt takes too
> >long resulting in a kernel lockup when tracing the kernel.
> >
> >Restructure perf_counter sampling into sample creation and sample
> >output.
> >
> >Prepare a single reference sample for BTS sampling and update the
> >from and to address fields when draining the BTS buffer. Drain the
> >entire BTS buffer between a single perf_output_begin() /
> >perf_output_end() pair.
> >
> >Signed-off-by: Markus Metzger <markus.t.metzger@xxxxxxxxx>
> >Signed-off-by: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
> >LKML-Reference: <20090915130023.A16204@xxxxxxxxxxxxxxxxxxx>
> >Signed-off-by: Ingo Molnar <mingo@xxxxxxx>
>
>
> Ingo,
>
> This change should speed up BTS overflow handling enough to support
> branch tracing the kernel.
> Would you please drop 1653192f510bd8114b7b133d7289e6e5c3e95046
> that disabled kernel tracing to work around the issue.

Please send a proper patch that re-enables the (previously unreliable)
aspect of BTS tracing, with a changelog that explains that the feature
now works and with an indication that you've tested it.

Ingo
--
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/