Messages in this thread | | | Date | Mon, 26 Sep 2022 14:32:14 -0400 | From | Steven Rostedt <> | Subject | Re: [PATCH v1] kernel/trace/trace: check the return value of tracing_update_buffers() |
| |
On Fri, 16 Sep 2022 19:03:53 -0700 Li Zhong <floridsleeves@gmail.com> wrote:
> Check the return value of tracing_update_buffers() in case it fails.
FYI, the subject should be:
tracing: Check the return value of tracing_update_buffers()
> > Signed-off-by: Li Zhong <floridsleeves@gmail.com> > --- > kernel/trace/trace.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c > index d3005279165d..0e367e326147 100644 > --- a/kernel/trace/trace.c > +++ b/kernel/trace/trace.c > @@ -3305,7 +3305,8 @@ void trace_printk_init_buffers(void) > pr_warn("**********************************************************\n"); > > /* Expand the buffers to set size */ > - tracing_update_buffers(); > + if (tracing_update_buffers() < 0) > + return;
Even if the buffers are not expanded, tracing can still work. This should not return here. But instead we should have something like:
/* Allocation really should not fail here at boot up or module load */ if (tracing_update_buffers() < 0) pr_err("Failed to expand tracing buffers for trace_printk() calls\n"); else buffers_allocate = 1;
As we still want the cmdline action done late in the code.
-- Steve
> > buffers_allocated = 1; >
| |