Re: [RFC,PATCH 2/2] perf, x86: Utilize the LBRs for machine/oopsdebugging

From: Peter Zijlstra
Date: Mon Mar 29 2010 - 13:13:01 EST


On Mon, 2010-03-29 at 19:02 +0200, Ingo Molnar wrote:
> * Peter Zijlstra <a.p.zijlstra@xxxxxxxxx> wrote:
>
> > The LBRs are relatively cheap to keep enabled and provide some history to
> > OOPSen, also some CPUs are reported to keep them over soft-reset, which
> > allows us to use them to debug things like tripple faults.
> >
> > Therefore introduce a boot option: lbr_debug=on, which always enable the
> > LBRs and will print the LBRs on CPU init and die().
>
> Yummie!
>
> Have you got some sample lbr_debug=1 output as well by any chance, with a
> crash provoked somewhere? How good is the output in practice? (i.e. how many
> artificial entries do we have at the end of the buffer, filled with crash
> related addresses?)

lbr_debug=on actually, =1 doesn't parse. I had some output, but I was
still looking at finding out why my %pF formats for CPU0 didn't have
symbols in, probably a init sequence issue.

> Also, i think we should use something more descriptive than lbr_debug=y.
> Perhaps crash_trace=1 or so?

Well, I would like to keep LBR in the name, since that is the mechanism
used, we could maybe do lbr_trace or somesuch?

> Plus, it would be nice to have a sysctl entry for this as well - so that
> production systems can enable this if they want to enrich the output of some
> difficult-to-analyze kernel crash, without yet another reboot.

Right, could do, but once it crashed it clearly to late to enable
anything ;-)

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