mirror of
https://github.com/torvalds/linux.git
synced 2026-03-08 01:04:41 +01:00
module: add helper function for reading module_buildid()
Add a helper function for reading the optional "build_id" member of struct module. It is going to be used also in ftrace_mod_address_lookup(). Use "#ifdef" instead of "#if IS_ENABLED()" to match the declaration of the optional field in struct module. Link: https://lkml.kernel.org/r/20251128135920.217303-4-pmladek@suse.com Signed-off-by: Petr Mladek <pmladek@suse.com> Reviewed-by: Daniel Gomez <da.gomez@samsung.com> Reviewed-by: Petr Pavlu <petr.pavlu@suse.com> Cc: Aaron Tomlin <atomlin@atomlin.com> Cc: Alexei Starovoitov <ast@kernel.org> Cc: Daniel Borkman <daniel@iogearbox.net> Cc: John Fastabend <john.fastabend@gmail.com> Cc: Kees Cook <kees@kernel.org> Cc: Luis Chamberalin <mcgrof@kernel.org> Cc: Marc Rutland <mark.rutland@arm.com> Cc: "Masami Hiramatsu (Google)" <mhiramat@kernel.org> Cc: Sami Tolvanen <samitolvanen@google.com> Cc: Steven Rostedt (Google) <rostedt@goodmis.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
This commit is contained in:
parent
fda024fb64
commit
acfdbb4ab2
2 changed files with 11 additions and 7 deletions
|
|
@ -748,6 +748,15 @@ static inline void __module_get(struct module *module)
|
|||
__mod ? __mod->name : "kernel"; \
|
||||
})
|
||||
|
||||
static inline const unsigned char *module_buildid(struct module *mod)
|
||||
{
|
||||
#ifdef CONFIG_STACKTRACE_BUILD_ID
|
||||
return mod->build_id;
|
||||
#else
|
||||
return NULL;
|
||||
#endif
|
||||
}
|
||||
|
||||
/* Dereference module function descriptor */
|
||||
void *dereference_module_function_descriptor(struct module *mod, void *ptr);
|
||||
|
||||
|
|
|
|||
|
|
@ -334,13 +334,8 @@ int module_address_lookup(unsigned long addr,
|
|||
if (mod) {
|
||||
if (modname)
|
||||
*modname = mod->name;
|
||||
if (modbuildid) {
|
||||
#if IS_ENABLED(CONFIG_STACKTRACE_BUILD_ID)
|
||||
*modbuildid = mod->build_id;
|
||||
#else
|
||||
*modbuildid = NULL;
|
||||
#endif
|
||||
}
|
||||
if (modbuildid)
|
||||
*modbuildid = module_buildid(mod);
|
||||
|
||||
sym = find_kallsyms_symbol(mod, addr, size, offset);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue