]> git.baikalelectronics.ru Git - kernel.git/commitdiff
tracing: Fix missing trace_boot_init_histograms kstrdup NULL checks
authorMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Fri, 15 Oct 2021 19:55:50 +0000 (15:55 -0400)
committerSteven Rostedt (VMware) <rostedt@goodmis.org>
Tue, 26 Oct 2021 13:18:10 +0000 (09:18 -0400)
trace_boot_init_histograms misses NULL pointer checks for kstrdup
failure.

Link: https://lkml.kernel.org/r/20211015195550.22742-1-mathieu.desnoyers@efficios.com
Fixes: ecb72aa8e0dc3 ("tracing/boot: Show correct histogram error command")
Acked-by: Masami Hiramatsu <mhiramat@kernel.org>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
kernel/trace/trace_boot.c

index 8d252f63cd784b66fe8453b4334368bbc12e9048..0580287d7a0d1ed5e0280b2b29e058739db1bdce 100644 (file)
@@ -430,6 +430,8 @@ trace_boot_init_histograms(struct trace_event_file *file,
                /* All digit started node should be instances. */
                if (trace_boot_compose_hist_cmd(node, buf, size) == 0) {
                        tmp = kstrdup(buf, GFP_KERNEL);
+                       if (!tmp)
+                               return;
                        if (trigger_process_regex(file, buf) < 0)
                                pr_err("Failed to apply hist trigger: %s\n", tmp);
                        kfree(tmp);
@@ -439,6 +441,8 @@ trace_boot_init_histograms(struct trace_event_file *file,
        if (xbc_node_find_subkey(hnode, "keys")) {
                if (trace_boot_compose_hist_cmd(hnode, buf, size) == 0) {
                        tmp = kstrdup(buf, GFP_KERNEL);
+                       if (!tmp)
+                               return;
                        if (trigger_process_regex(file, buf) < 0)
                                pr_err("Failed to apply hist trigger: %s\n", tmp);
                        kfree(tmp);