Hi Steven,
Some mobile manufactures used to reserve a space in emmc to dump message
before oops, your work is smarter than this for it's getting rid of
dependency of hardware.
I look forward to trying it when it comes out, many thanks.
BR
Song
在 2024/6/25 21:44, Steven Rostedt 写道:
On Tue, 25 Jun 2024 08:20:15 -0500
Andrew Halaney <ahalaney@xxxxxxxxxx> wrote:
So I ended up doing a sequence like:
tracing_off();
ftrace_dump(DUMP_ALL);
I've done that several times too.
in the softlockup code when it was detected. Ideally I wanted to look at
the vmcore and look at the ftrace data in there (since debugging printk
by using printk is a little confusing), but there was a makedumpfile bug
I hit... so I went with the hacky route to prove to myself what was
going on. I think since then that's been resolved. Hope that helps!
You may be interested in some work I'm doing that allows you to read
the ring buffer from a previous kernel after a crash.
https://lore.kernel.org/linux-trace-kernel/20240612231934.608252486@xxxxxxxxxxx/
I also have a way to ask for any memory, that should be able to get the
same location most times, via a "reserve_mem=" kernel command line
parameter.
https://lore.kernel.org/linux-trace-kernel/20240613233415.734483785@xxxxxxxxxxx/
They are both destined for the next merge window. After that, I have
one more patch that ties the two together, so that you can have a
kernel command line of:
reserve_mem=12M:4096:trace trace_instance=bootmap@trace
and then when you boot up, you would have a trace instance that would
be mapped to that memory. If your machine doesn't clear memory after a
crash, you can read the data from the crash on the next boot.
-- Steve