diff options
author | Arnd Bergmann <arnd@arndb.de> | 2019-04-15 17:55:00 +0200 |
---|---|---|
committer | Corey Minyard <cminyard@mvista.com> | 2019-04-17 13:14:25 -0500 |
commit | 9a75bd18a85bec5d6d0006a3dba6ff78f65d8fe3 (patch) | |
tree | a29be2991092afaebc9607b1fb7d7985424dcbcf /drivers/char | |
parent | 8fac128ce9a12908b5089ee5e3be435b42e59cac (diff) |
ipmi: avoid atomic_inc in exit function
This causes a link failure on ARM in certain configurations,
when we reference each atomic operation from .alt.smp.init in
order to patch out atomics on non-SMP systems:
`.exit.text' referenced in section `.alt.smp.init' of drivers/char/ipmi/ipmi_msghandler.o: defined in discarded section `.exit.text' of drivers/char/ipmi/ipmi_msghandler.o
In this case, we can trivially replace the atomic_inc() with
an atomic_set() that has the same effect and does not require
a fixup.
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Message-Id: <20190415155509.3565087-1-arnd@arndb.de>
Signed-off-by: Corey Minyard <cminyard@mvista.com>
Diffstat (limited to 'drivers/char')
-rw-r--r-- | drivers/char/ipmi/ipmi_msghandler.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/char/ipmi/ipmi_msghandler.c b/drivers/char/ipmi/ipmi_msghandler.c index 421f86104593..1dc10740fc0f 100644 --- a/drivers/char/ipmi/ipmi_msghandler.c +++ b/drivers/char/ipmi/ipmi_msghandler.c @@ -5179,7 +5179,7 @@ static void __exit cleanup_ipmi(void) * avoids problems with race conditions removing the timer * here. */ - atomic_inc(&stop_operation); + atomic_set(&stop_operation, 1); del_timer_sync(&ipmi_timer); initialized = false; |