On 1/20/2024 12:56 AM, Steven Rostedt wrote:
On Fri, 19 Jan 2024 16:08:24 +0800
Huang Yiwei <quic_hyiwei@xxxxxxxxxxx> wrote:
- ftrace_dump_on_oops[=orig_cpu]
+ ftrace_dump_on_oops[=orig_cpu | =<instance>]
I wonder if we should have it be:
ftrace_dump_on_oops[=orig_cpu | =<instance> | =<instance>:orig_cpu ]
Then last would be to only print out a specific CPU trace of the given instance.
And if we really want to be fancy!
ftrace_dump_on_opps[=orig_cpu | =<instance> | =orig_cpu:<instance> ][,<instance> | ,<instance>:orig_cpu]
Yeah, I agree to make the parameter more flexible.
"=orig_cpu:<instance>" means to dump global and another instance?
I'm thinking of the following format:
ftrace_dump_on_opps[=orig_cpu | =<instance>][,<instance> |
,<instance>=orig_cpu]
Here list some possible situations:
1. Dump global on orig_cpu:
ftrace_dump_on_oops=orig_cpu
2. Dump global and instance1 on all cpu, instance2 on orig_cpu:
ftrace_dump_on_opps,<instance1>,<instance2>=orig_cpu
3. Dump global and instance1 on orig_cpu, instance2 on all cpu:
ftrace_dump_on_opps=orig_cpu,<instance1>=orig_cpu,<instance2>
4. Dump instance1 on all cpu, instance2 on orig_cpu:
ftrace_dump_on_opps=<instance1>,<instance2>=orig_cpu
5. Dump instance1 and instance2 on orig_cpu:
ftrace_dump_on_opps=<instance1>=orig_cpu,<instance2>=orig_cpu
This makes orig_cpu dump for global same as instance, the parameter may
seems more unified and users don't need to remember another markers to
request orig_cpu dump.
But one problem here is if there's an instance named "orig_cpu", then we
may not dump it correctly.
Regards,
Huang Yiwei
That would allow dumping more than one instance.
If you want to dump the main buffer and an instance foo:
ftrace_dump_on_opps,foo
Where the ',' says to dump the top instance as well as the foo instance.
-- Steve
[FTRACE] will dump the trace buffers on oops.
- If no parameter is passed, ftrace will dump
- buffers of all CPUs, but if you pass orig_cpu, it will
+ If no parameter is passed, ftrace will dump global
+ buffers of all CPUs, if you pass orig_cpu, it will
dump only the buffer of the CPU that triggered the
- oops.
+ oops, or specific instance will be dumped if instance
+ name is passed.