Messages in this thread | | | Date | Fri, 26 Mar 2021 12:12:35 +0100 | From | Peter Zijlstra <> | Subject | Re: [PATCH mptcp-next] static_call: fix unused variable warn w/o MODULE |
| |
On Fri, Mar 26, 2021 at 11:50:23AM +0100, Matthieu Baerts wrote: > Here is the warning converted as error and reported by GCC: > > kernel/static_call.c: In function ‘__static_call_update’: > kernel/static_call.c:153:18: error: unused variable ‘mod’ [-Werror=unused-variable] > 153 | struct module *mod = site_mod->mod; > | ^~~ > cc1: all warnings being treated as errors > make[1]: *** [scripts/Makefile.build:271: kernel/static_call.o] Error 1 > > This is simply because since recently, we no longer use 'mod' variable > elsewhere if MODULE is unset. > > When using 'make tinyconfig' to generate the default kconfig, MODULE is > unset. > > There are different ways to fix this warning. Here I tried to minimised > the number of modified lines and not add more #ifdef. We could also move > the declaration of the 'mod' variable inside the if-statement or > directly use site_mod->mod. > > Fixes: 698bacefe993 ("static_call: Align static_call_is_init() patching condition") > Signed-off-by: Matthieu Baerts <matthieu.baerts@tessares.net> > --- > > Notes: > Feel free to modify this patch directly if you prefer. I can of course > send a new version if needed.
Ah, I had indeed meant to take a look at this, but hadn't come around to it. I think this is as nice a solution as there is, so let me go apply this.
> kernel/static_call.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/kernel/static_call.c b/kernel/static_call.c > index 2c5950b0b90e..723fcc9d20db 100644 > --- a/kernel/static_call.c > +++ b/kernel/static_call.c > @@ -165,13 +165,13 @@ void __static_call_update(struct static_call_key *key, void *tramp, void *func) > > stop = __stop_static_call_sites; > > -#ifdef CONFIG_MODULES > if (mod) { > +#ifdef CONFIG_MODULES > stop = mod->static_call_sites + > mod->num_static_call_sites; > init = mod->state == MODULE_STATE_COMING; > - } > #endif > + } >
| |