ftrace: Comment that ftrace_func_mapper is freed with free_ftrace_hash()

The structure ftrace_func_mapper only contains a single field and that is
a ftrace_hash. It is used to abstract it out from a normal hash to control
users of how it gets modified.

The freeing of a ftrace_func_mapper structure is:

  free_ftrace_hash(&mapper->hash);

Without context, this looks like a bug. It should be commented that it is
not a bug and it is freed this way.

Cc: Masami Hiramatsu <mhiramat@kernel.org>
Cc: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Cc: Mark Rutland <mark.rutland@arm.com>
Link: https://lore.kernel.org/20250416165420.5c717420@gandalf.local.home
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
This commit is contained in:
Steven Rostedt 2025-04-16 16:54:20 -04:00 committed by Steven Rostedt (Google)
parent 761ef34228
commit a54665ab7c

View File

@ -5208,8 +5208,12 @@ struct ftrace_func_map {
void *data;
};
/*
* Note, ftrace_func_mapper is freed by free_ftrace_hash(&mapper->hash).
* The hash field must be the first field.
*/
struct ftrace_func_mapper {
struct ftrace_hash hash;
struct ftrace_hash hash; /* Must be first! */
};
/**
@ -5344,6 +5348,7 @@ void free_ftrace_func_mapper(struct ftrace_func_mapper *mapper,
}
}
}
/* This also frees the mapper itself */
free_ftrace_hash(&mapper->hash);
}