On Wed, Mar 08, 2023 at 03:38:46PM +0800, Zhen Lei wrote: > The parameter 'struct module *' in the hook function associated with > {module_}kallsyms_on_each_symbol() is no longer used. Delete it. > > Suggested-by: Petr Mladek <pmladek@xxxxxxxx> > Signed-off-by: Zhen Lei <thunder.leizhen@xxxxxxxxxx> lgtm Acked-by: Jiri Olsa <jolsa@xxxxxxxxxx> jirka > --- > include/linux/kallsyms.h | 7 +++---- > include/linux/module.h | 6 ++---- > kernel/kallsyms.c | 5 ++--- > kernel/kallsyms_selftest.c | 6 +++--- > kernel/livepatch/core.c | 3 +-- > kernel/module/kallsyms.c | 5 ++--- > kernel/trace/ftrace.c | 3 +-- > 7 files changed, 14 insertions(+), 21 deletions(-) > > diff --git a/include/linux/kallsyms.h b/include/linux/kallsyms.h > index 0065209cc00424b..fe3c9993b5bfe47 100644 > --- a/include/linux/kallsyms.h > +++ b/include/linux/kallsyms.h > @@ -67,8 +67,7 @@ static inline void *dereference_symbol_descriptor(void *ptr) > > #ifdef CONFIG_KALLSYMS > unsigned long kallsyms_sym_address(int idx); > -int kallsyms_on_each_symbol(int (*fn)(void *, const char *, struct module *, > - unsigned long), > +int kallsyms_on_each_symbol(int (*fn)(void *, const char *, unsigned long), > void *data); > int kallsyms_on_each_match_symbol(int (*fn)(void *, unsigned long), > const char *name, void *data); > @@ -166,8 +165,8 @@ static inline bool kallsyms_show_value(const struct cred *cred) > return false; > } > > -static inline int kallsyms_on_each_symbol(int (*fn)(void *, const char *, struct module *, > - unsigned long), void *data) > +static inline int kallsyms_on_each_symbol(int (*fn)(void *, const char *, unsigned long), > + void *data) > { > return -EOPNOTSUPP; > } > diff --git a/include/linux/module.h b/include/linux/module.h > index 4435ad9439abba6..1de304e0b09c7f9 100644 > --- a/include/linux/module.h > +++ b/include/linux/module.h > @@ -888,13 +888,11 @@ static inline bool module_sig_ok(struct module *module) > > #if defined(CONFIG_MODULES) && defined(CONFIG_KALLSYMS) > int module_kallsyms_on_each_symbol(const char *modname, > - int (*fn)(void *, const char *, > - struct module *, unsigned long), > + int (*fn)(void *, const char *, unsigned long), > void *data); > #else > static inline int module_kallsyms_on_each_symbol(const char *modname, > - int (*fn)(void *, const char *, > - struct module *, unsigned long), > + int (*fn)(void *, const char *, unsigned long), > void *data) > { > return -EOPNOTSUPP; > diff --git a/kernel/kallsyms.c b/kernel/kallsyms.c > index 83f499182c9aa31..77747391f49b66c 100644 > --- a/kernel/kallsyms.c > +++ b/kernel/kallsyms.c > @@ -288,8 +288,7 @@ unsigned long kallsyms_lookup_name(const char *name) > * Iterate over all symbols in vmlinux. For symbols from modules use > * module_kallsyms_on_each_symbol instead. > */ > -int kallsyms_on_each_symbol(int (*fn)(void *, const char *, struct module *, > - unsigned long), > +int kallsyms_on_each_symbol(int (*fn)(void *, const char *, unsigned long), > void *data) > { > char namebuf[KSYM_NAME_LEN]; > @@ -299,7 +298,7 @@ int kallsyms_on_each_symbol(int (*fn)(void *, const char *, struct module *, > > for (i = 0, off = 0; i < kallsyms_num_syms; i++) { > off = kallsyms_expand_symbol(off, namebuf, ARRAY_SIZE(namebuf)); > - ret = fn(data, namebuf, NULL, kallsyms_sym_address(i)); > + ret = fn(data, namebuf, kallsyms_sym_address(i)); > if (ret != 0) > return ret; > cond_resched(); > diff --git a/kernel/kallsyms_selftest.c b/kernel/kallsyms_selftest.c > index bfbc12da33267f8..a2e3745d15c471f 100644 > --- a/kernel/kallsyms_selftest.c > +++ b/kernel/kallsyms_selftest.c > @@ -95,7 +95,7 @@ static struct test_item test_items[] = { > > static char stub_name[KSYM_NAME_LEN]; > > -static int stat_symbol_len(void *data, const char *name, struct module *mod, unsigned long addr) > +static int stat_symbol_len(void *data, const char *name, unsigned long addr) > { > *(u32 *)data += strlen(name); > > @@ -154,7 +154,7 @@ static void test_kallsyms_compression_ratio(void) > pr_info(" ---------------------------------------------------------\n"); > } > > -static int lookup_name(void *data, const char *name, struct module *mod, unsigned long addr) > +static int lookup_name(void *data, const char *name, unsigned long addr) > { > u64 t0, t1, t; > struct test_stat *stat = (struct test_stat *)data; > @@ -207,7 +207,7 @@ static bool match_cleanup_name(const char *s, const char *name) > return !strncmp(s, name, len); > } > > -static int find_symbol(void *data, const char *name, struct module *mod, unsigned long addr) > +static int find_symbol(void *data, const char *name, unsigned long addr) > { > struct test_stat *stat = (struct test_stat *)data; > > diff --git a/kernel/livepatch/core.c b/kernel/livepatch/core.c > index 4bd2d5e10f20a1c..1de2c40cc37841a 100644 > --- a/kernel/livepatch/core.c > +++ b/kernel/livepatch/core.c > @@ -142,8 +142,7 @@ static int klp_match_callback(void *data, unsigned long addr) > return 0; > } > > -static int klp_find_callback(void *data, const char *name, > - struct module *mod, unsigned long addr) > +static int klp_find_callback(void *data, const char *name, unsigned long addr) > { > struct klp_find_arg *args = data; > > diff --git a/kernel/module/kallsyms.c b/kernel/module/kallsyms.c > index ab2376a1be88e7e..c4fe856e5052ff7 100644 > --- a/kernel/module/kallsyms.c > +++ b/kernel/module/kallsyms.c > @@ -495,8 +495,7 @@ unsigned long module_kallsyms_lookup_name(const char *name) > } > > int module_kallsyms_on_each_symbol(const char *modname, > - int (*fn)(void *, const char *, > - struct module *, unsigned long), > + int (*fn)(void *, const char *, unsigned long), > void *data) > { > struct module *mod; > @@ -525,7 +524,7 @@ int module_kallsyms_on_each_symbol(const char *modname, > continue; > > ret = fn(data, kallsyms_symbol_name(kallsyms, i), > - mod, kallsyms_symbol_value(sym)); > + kallsyms_symbol_value(sym)); > if (ret != 0) > goto out; > } > diff --git a/kernel/trace/ftrace.c b/kernel/trace/ftrace.c > index 29baa97d0d53428..76caca8f496aaed 100644 > --- a/kernel/trace/ftrace.c > +++ b/kernel/trace/ftrace.c > @@ -8391,8 +8391,7 @@ struct kallsyms_data { > * and returns 1 in case we resolved all the requested symbols, > * 0 otherwise. > */ > -static int kallsyms_callback(void *data, const char *name, > - struct module *mod, unsigned long addr) > +static int kallsyms_callback(void *data, const char *name, unsigned long addr) > { > struct kallsyms_data *args = data; > const char **sym; > -- > 2.25.1 >