Re: [PATCH] kprobes: Use module_name() macro
From: Masami Hiramatsu
Date: Tue Aug 18 2020 - 10:50:05 EST
On Tue, 18 Aug 2020 08:08:57 +0300
Jarkko Sakkinen <jarkko.sakkinen@xxxxxxxxxxxxxxx> wrote:
> It is advised to use module_name() macro instead of dereferencing mod->name
> directly. This makes sense for consistencys sake and also it prevents a
> hard dependency to CONFIG_MODULES.
>
> Cc: linux-mm@xxxxxxxxx
> Cc: Andi Kleen <ak@xxxxxxxxxxxxxxx>
> Cc: Ard Biesheuvel <ardb@xxxxxxxxxx>
> Cc: Jessica Yu <jeyu@xxxxxxxxxx>
> Cc: Mark Rutland <mark.rutland@xxxxxxx>,
> Cc: Masami Hiramatsu <mhiramat@xxxxxxxxxx>
> Cc: Mike Rapoport <rppt@xxxxxxxxxx>
> Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
> Cc: Russell King <linux@xxxxxxxxxxxxxxx>
> Cc: Will Deacon <will@xxxxxxxxxx>
> Signed-off-by: Jarkko Sakkinen <jarkko.sakkinen@xxxxxxxxxxxxxxx>
OK, this looks good to me.
Acked-by: Masami Hiramatsu <mhiramat@xxxxxxxxxx>
Thank you,
> ---
> I thought that to get things moving it would make sense to fix this low
> hanging fruit issue first. Similarly as Masami's fix kernel/kprobes.c
> this will make my patch set less rambling, and thus easier to follow.
> kernel/trace/trace_kprobe.c | 7 ++++---
> 1 file changed, 4 insertions(+), 3 deletions(-)
>
> diff --git a/kernel/trace/trace_kprobe.c b/kernel/trace/trace_kprobe.c
> index aefb6065b508..19c00ee90945 100644
> --- a/kernel/trace/trace_kprobe.c
> +++ b/kernel/trace/trace_kprobe.c
> @@ -106,9 +106,10 @@ static nokprobe_inline bool trace_kprobe_has_gone(struct trace_kprobe *tk)
> static nokprobe_inline bool trace_kprobe_within_module(struct trace_kprobe *tk,
> struct module *mod)
> {
> - int len = strlen(mod->name);
> + int len = strlen(module_name(mod));
> const char *name = trace_kprobe_symbol(tk);
> - return strncmp(mod->name, name, len) == 0 && name[len] == ':';
> +
> + return strncmp(module_name(mod), name, len) == 0 && name[len] == ':';
> }
>
> static nokprobe_inline bool trace_kprobe_module_exist(struct trace_kprobe *tk)
> @@ -688,7 +689,7 @@ static int trace_kprobe_module_callback(struct notifier_block *nb,
> if (ret)
> pr_warn("Failed to re-register probe %s on %s: %d\n",
> trace_probe_name(&tk->tp),
> - mod->name, ret);
> + module_name(mod), ret);
> }
> }
> mutex_unlock(&event_mutex);
> --
> 2.25.1
>
--
Masami Hiramatsu <mhiramat@xxxxxxxxxx>