[tip: locking/core] static_call: Fix unused variable warn w/o MODULE

From: tip-bot2 for Matthieu Baerts
Date: Fri Apr 09 2021 - 07:30:36 EST


The following commit has been merged into the locking/core branch of tip:

Commit-ID: 7d95f22798ecea513f37b792b39fec4bcf20fec3
Gitweb: https://git.kernel.org/tip/7d95f22798ecea513f37b792b39fec4bcf20fec3
Author: Matthieu Baerts <matthieu.baerts@xxxxxxxxxxxx>
AuthorDate: Fri, 26 Mar 2021 11:50:23 +01:00
Committer: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
CommitterDate: Fri, 09 Apr 2021 13:22:12 +02:00

static_call: Fix unused variable warn w/o MODULE

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@xxxxxxxxxxxx>
Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
Link: https://lkml.kernel.org/r/20210326105023.2058860-1-matthieu.baerts@xxxxxxxxxxxx
---
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 2c5950b..723fcc9 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
+ }

for (site = site_mod->sites;
site < stop && static_call_key(site) == key; site++) {