Skip to content

Commit

Permalink
ftrace: Remove return value of ftrace_arch_modify_*()
Browse files Browse the repository at this point in the history
All instances of the function ftrace_arch_modify_prepare() and
  ftrace_arch_modify_post_process() return zero. There's no point in
  checking their return value. Just have them be void functions.

Link: https://lkml.kernel.org/r/20220518023639.4065-1-kunyu@nfschina.com

Signed-off-by: Li kunyu <kunyu@nfschina.com>
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
  • Loading branch information
likunyur authored and rostedt committed May 27, 2022
1 parent 2decd16 commit 3a2bfec
Show file tree
Hide file tree
Showing 6 changed files with 13 additions and 28 deletions.
6 changes: 2 additions & 4 deletions arch/arm/kernel/ftrace.c
Original file line number Diff line number Diff line change
Expand Up @@ -79,16 +79,14 @@ static unsigned long __ref adjust_address(struct dyn_ftrace *rec,
return (unsigned long)&ftrace_regs_caller_from_init;
}

int ftrace_arch_code_modify_prepare(void)
void ftrace_arch_code_modify_prepare(void)
{
return 0;
}

int ftrace_arch_code_modify_post_process(void)
void ftrace_arch_code_modify_post_process(void)
{
/* Make sure any TLB misses during machine stop are cleared. */
flush_tlb_all();
return 0;
}

static unsigned long ftrace_call_replace(unsigned long pc, unsigned long addr,
Expand Down
6 changes: 2 additions & 4 deletions arch/riscv/kernel/ftrace.c
Original file line number Diff line number Diff line change
Expand Up @@ -12,16 +12,14 @@
#include <asm/patch.h>

#ifdef CONFIG_DYNAMIC_FTRACE
int ftrace_arch_code_modify_prepare(void) __acquires(&text_mutex)
void ftrace_arch_code_modify_prepare(void) __acquires(&text_mutex)
{
mutex_lock(&text_mutex);
return 0;
}

int ftrace_arch_code_modify_post_process(void) __releases(&text_mutex)
void ftrace_arch_code_modify_post_process(void) __releases(&text_mutex)
{
mutex_unlock(&text_mutex);
return 0;
}

static int ftrace_check_current_call(unsigned long hook_pos,
Expand Down
3 changes: 1 addition & 2 deletions arch/s390/kernel/ftrace.c
Original file line number Diff line number Diff line change
Expand Up @@ -225,14 +225,13 @@ void arch_ftrace_update_code(int command)
ftrace_modify_all_code(command);
}

int ftrace_arch_code_modify_post_process(void)
void ftrace_arch_code_modify_post_process(void)
{
/*
* Flush any pre-fetched instructions on all
* CPUs to make the new code visible.
*/
text_poke_sync_lock();
return 0;
}

#ifdef CONFIG_MODULES
Expand Down
6 changes: 2 additions & 4 deletions arch/x86/kernel/ftrace.c
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@

static int ftrace_poke_late = 0;

int ftrace_arch_code_modify_prepare(void)
void ftrace_arch_code_modify_prepare(void)
__acquires(&text_mutex)
{
/*
Expand All @@ -47,10 +47,9 @@ int ftrace_arch_code_modify_prepare(void)
*/
mutex_lock(&text_mutex);
ftrace_poke_late = 1;
return 0;
}

int ftrace_arch_code_modify_post_process(void)
void ftrace_arch_code_modify_post_process(void)
__releases(&text_mutex)
{
/*
Expand All @@ -61,7 +60,6 @@ int ftrace_arch_code_modify_post_process(void)
text_poke_finish();
ftrace_poke_late = 0;
mutex_unlock(&text_mutex);
return 0;
}

static const char *ftrace_nop_replace(void)
Expand Down
4 changes: 2 additions & 2 deletions include/linux/ftrace.h
Original file line number Diff line number Diff line change
Expand Up @@ -449,8 +449,8 @@ static inline void stack_tracer_enable(void) { }

#ifdef CONFIG_DYNAMIC_FTRACE

int ftrace_arch_code_modify_prepare(void);
int ftrace_arch_code_modify_post_process(void);
void ftrace_arch_code_modify_prepare(void);
void ftrace_arch_code_modify_post_process(void);

enum ftrace_bug_type {
FTRACE_BUG_UNKNOWN,
Expand Down
16 changes: 4 additions & 12 deletions kernel/trace/ftrace.c
Original file line number Diff line number Diff line change
Expand Up @@ -2704,18 +2704,16 @@ ftrace_nop_initialize(struct module *mod, struct dyn_ftrace *rec)
* archs can override this function if they must do something
* before the modifying code is performed.
*/
int __weak ftrace_arch_code_modify_prepare(void)
void __weak ftrace_arch_code_modify_prepare(void)
{
return 0;
}

/*
* archs can override this function if they must do something
* after the modifying code is performed.
*/
int __weak ftrace_arch_code_modify_post_process(void)
void __weak ftrace_arch_code_modify_post_process(void)
{
return 0;
}

void ftrace_modify_all_code(int command)
Expand Down Expand Up @@ -2801,12 +2799,7 @@ void __weak arch_ftrace_update_code(int command)

static void ftrace_run_update_code(int command)
{
int ret;

ret = ftrace_arch_code_modify_prepare();
FTRACE_WARN_ON(ret);
if (ret)
return;
ftrace_arch_code_modify_prepare();

/*
* By default we use stop_machine() to modify the code.
Expand All @@ -2816,8 +2809,7 @@ static void ftrace_run_update_code(int command)
*/
arch_ftrace_update_code(command);

ret = ftrace_arch_code_modify_post_process();
FTRACE_WARN_ON(ret);
ftrace_arch_code_modify_post_process();
}

static void ftrace_run_modify_code(struct ftrace_ops *ops, int command,
Expand Down

0 comments on commit 3a2bfec

Please sign in to comment.