On Thu, 24 Oct 2024 01:04:48 +0800
Li Huafei <[email protected]> wrote:
> Instead of returning an error, goto the mutex unlock at the end of the
> function.
>
> Fixes smatch warning:
>
> kernel/trace/fgraph.c:1317 register_ftrace_graph() warn: inconsistent returns
> '&ftrace_lock'.
>
> Fixes: 2c02f7375e65 ("fgraph: Use CPU hotplug mechanism to initialize idle
> shadow stacks")
> Reported-by: kernel test robot <[email protected]>
> Reported-by: Dan Carpenter <[email protected]>
> Closes: https://lore.kernel.org/r/[email protected]/
> Signed-off-by: Li Huafei <[email protected]>
> ---
> kernel/trace/fgraph.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/kernel/trace/fgraph.c b/kernel/trace/fgraph.c
> index 41e7a15dcb50..98fa7b2a4903 100644
> --- a/kernel/trace/fgraph.c
> +++ b/kernel/trace/fgraph.c
> @@ -1259,7 +1259,7 @@ int register_ftrace_graph(struct fgraph_ops *gops)
> fgraph_cpu_init, NULL);
> if (ret < 0) {
> pr_warn("fgraph: Error to init cpu hotplug support\n");
> - return ret;
> + goto out;
> }
> fgraph_initialized = true;
> ret = 0;
Actually, I'm thinking we just should use guard(mutex)(&ftrace_lock);
-- Steve