parisc: Enable -mlong-calls gcc option by default when !CONFIG_MODULES
authorHelge Deller <deller@gmx.de>
Tue, 26 Jan 2021 19:16:21 +0000 (20:16 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 3 Feb 2021 22:28:37 +0000 (23:28 +0100)
commit6141f82fd5ee0959a3e81ceb37c8af8816cfa31c
tree9fcabd1cb2b6da8465df1750ebab80134a2f77cb
parentd56e3b6a6b148161805773f52f3921861317542f
parisc: Enable -mlong-calls gcc option by default when !CONFIG_MODULES

commit 00e35f2b0e8acb88d4e1aa96ff0490e3bfe46580 upstream.

When building a kernel without module support, the CONFIG_MLONGCALL option
needs to be enabled in order to reach symbols which are outside of a 22-bit
branch.

This patch changes the autodetection in the Kconfig script to always enable
CONFIG_MLONGCALL when modules are disabled and uses a far call to
preempt_schedule_irq() in intr_do_preempt() to reach the symbol in all cases.

Signed-off-by: Helge Deller <deller@gmx.de>
Reported-by: kernel test robot <lkp@intel.com>
Cc: stable@vger.kernel.org # v5.6+
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
arch/parisc/Kconfig
arch/parisc/kernel/entry.S