[PATCH 3/6] pstore: Add persistent function tracing

Colin Cross ccross at android.com
Fri Jun 15 22:23:36 UTC 2012


On Fri, Jun 15, 2012 at 3:19 PM, Luck, Tony <tony.luck at intel.com> wrote:
>> milli-seconds for recording? This would cripple the kernel. On slow
>> machines, incorporating lockdep into function tracing (and other debug
>> options) causes the system to live lock. Tracing the timer interrupt
>> took so long that by the time it finished, the next timer triggered
>> again.
>
> Ah - I think I misunderstood how this works ... I thought the function
> trace was taken at some point in the crash/shutdown path.  Now I see
> that it is being generated repeatedly as the kernel runs ... with the
> idea that if a hang happens, you can see the last call trace that was
> successful.
>
> Ok then - clearly this is only useful with a ram backend for pstore.
>
> Binary makes sense too - but I'll stick with my comment that a different
> kernel must be able to do the decode. Or we need to spell out clearly
> that you must have the same, or compatible kernel booted to make any
> sense of the saved ftrace record.

The decode also converts PCs to symbols, so for all the data to be
useful you have to boot the exact same kernel.  You could
theoretically boot a different kernel with a compatible format, but
you would have to manually extract the PCs from the dump and addr2line
them against the correct vmlinux, which is probably more trouble than
it's worth.  Also, the binary data is stored inside a pstore_ram
ringbuffer that may change formats between kernels.  I would suggest
documenting that this is only supposed to work booting back to the
same kernel.



More information about the devel mailing list