Thread (9 messages) 9 messages, 3 authors, 2024-02-29

Re: [PATCH v5] tracing: Support to dump instance traces by ftrace_dump_on_oops

From: Steven Rostedt <rostedt@goodmis.org>
Date: 2024-02-26 18:42:29
Also in: linux-doc, linux-fsdevel, lkml

On Mon, 26 Feb 2024 08:51:58 +0900
Masami Hiramatsu (Google) [off-list ref] wrote:
On Thu, 8 Feb 2024 21:18:14 +0800
Huang Yiwei [off-list ref] wrote:
quoted
Currently ftrace only dumps the global trace buffer on an OOPs. For
debugging a production usecase, instance trace will be helpful to
check specific problems since global trace buffer may be used for
other purposes.

This patch extend the ftrace_dump_on_oops parameter to dump a specific
or multiple trace instances:

  - ftrace_dump_on_oops=0: as before -- don't dump
  - ftrace_dump_on_oops[=1]: as before -- dump the global trace buffer
  on all CPUs
  - ftrace_dump_on_oops=2 or =orig_cpu: as before -- dump the global
  trace buffer on CPU that triggered the oops
  - ftrace_dump_on_oops=<instance_name>: new behavior -- dump the
  tracing instance matching <instance_name>
  - ftrace_dump_on_oops[=2/orig_cpu],<instance1_name>[=2/orig_cpu],  
Would you mean "ftrace_dump_on_oops,<instance1_name>" ?
??
As far as I can see, it doesn't work. Command line parser requires "="
for parameter value. 
Not sure what you mean, but it does work with:

 ftrace_dump_on_oops=1,foo=2

As well as

 ftrace_dump_on_oops=foo


If you want to dump with an instance, yes you need a '=' sign.
Also, is there any reason to limit the parameter
to 2 or orig_cpu?
There's 3 options: 0 = off, 1 = all (default), 2 = orig_cpu

I don't see it limited.

You don't need the equal sign if you just want the top buffer.
What about this syntax?

ftrace_dump_on_oops=<0|1|2|orig_cpu>[,<instance_name>[=<1|2|orig_cpu>][,...]
That should work now. But why add the requirement of an '=' as that isn't
needed now? That is, the syntax is:

 ftrace_dump_on_oops[=[<0|1|2|orig_cpu>,][<instance_name>[=<1|2|orig_cpu>][,...]]
or

ftrace_dump_on_oops=instance_name[=<1|2|orig_cpu>][,...]
This works.
or

ftrace_dump_on_oops
This works.
e.g.
"ftrace_dump_on_oops=0,foo=orig_cpu" is equal to "ftrace_dump_on_oops=foo=orig_cpu"
And that does.

I think this patch does what you are asking for.

-- Steve
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help