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

From: Steven Rostedt
Date: Thu Feb 22 2024 - 20:45:20 EST


On Thu, 8 Feb 2024 21:18:14 +0800
Huang Yiwei <quic_hyiwei@xxxxxxxxxxx> wrote:

> 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],
> <instrance2_name>[=2/orig_cpu]: new behavior -- dump the global trace
> buffer and multiple instance buffer on all CPUs, or only dump on CPU
> that triggered the oops if =2 or =orig_cpu is given
>
> Also, the sysctl node can handle the input accordingly.
>
> Cc: Ross Zwisler <zwisler@xxxxxxxxxx>
> Signed-off-by: Joel Fernandes (Google) <joel@xxxxxxxxxxxxxxxxx>
> Signed-off-by: Huang Yiwei <quic_hyiwei@xxxxxxxxxxx>

This patch failed with the following warning:

kernel/trace/trace.c:10029:6: warning: no previous prototype for ‘ftrace_dump_one’ [-Wmissing-prototypes]

-- Steve