]> www.infradead.org Git - users/jedix/linux-maple.git/commit
tracing/string: Create and use __free(argv_free) in trace_dynevent.c
authorSteven Rostedt <rostedt@goodmis.org>
Fri, 20 Dec 2024 15:33:13 +0000 (10:33 -0500)
committerSteven Rostedt (Google) <rostedt@goodmis.org>
Thu, 26 Dec 2024 15:38:37 +0000 (10:38 -0500)
commit9e49ca756d207f4313fb7af48648a67da8e4e250
tree2cd3cde31deaf7d56290d7c52a49cde69496c652
parent08b767317192e7a20d6d95ff7eca6d9bbc48c192
tracing/string: Create and use __free(argv_free) in trace_dynevent.c

The function dyn_event_release() uses argv_split() which must be freed via
argv_free(). It contains several error paths that do a goto out to call
argv_free() for cleanup. This makes the code complex and error prone.

Create a new __free() directive __free(argv_free) that will call
argv_free() for data allocated with argv_split(), and use it in the
dyn_event_release() function.

Cc: Kees Cook <kees@kernel.org>
Cc: Masami Hiramatsu <mhiramat@kernel.org>
Cc: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Andy Shevchenko <andy@kernel.org>
Cc: linux-hardening@vger.kernel.org
Link: https://lore.kernel.org/20241220103313.4a74ec8e@gandalf.local.home
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
include/linux/string.h
kernel/trace/trace_dynevent.c