The FTRACE_OPS_FL_INITIALIZED flag is cleared in register_ftrace_direct,
which can make it initialized by ftrace_ops_init() even if it is already
initialized. It seems that there is no big deal here, but let's still fix
it.

Fixes: f64dd4627ec6 ("ftrace: Add multi direct register/unregister interface")
Signed-off-by: Menglong Dong <[email protected]>
---
 kernel/trace/ftrace.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/kernel/trace/ftrace.c b/kernel/trace/ftrace.c
index 42bd2ba68a82..efb5ce32298f 100644
--- a/kernel/trace/ftrace.c
+++ b/kernel/trace/ftrace.c
@@ -6043,7 +6043,7 @@ int register_ftrace_direct(struct ftrace_ops *ops, 
unsigned long addr)
        new_hash = NULL;
 
        ops->func = call_direct_funcs;
-       ops->flags = MULTI_FLAGS;
+       ops->flags |= MULTI_FLAGS;
        ops->trampoline = FTRACE_REGS_ADDR;
        ops->direct_call = addr;
 
-- 
2.51.2


Reply via email to