1
linux/arch/s390/lib/expoline.S
Vasily Gorbik ba05b39d54 s390/expoline: Make modules use kernel expolines
Currently, kernel modules contain their own set of expoline thunks. In
the case of EXPOLINE_EXTERN, this involves postlinking of precompiled
expoline.o. expoline.o is also necessary for out-of-source tree module
builds.

Now that the kernel modules area is less than 4 GB away from
kernel expoline thunks, make modules use kernel expolines. Also make
EXPOLINE_EXTERN the default if the compiler supports it. This simplifies
build and aligns with the approach adopted by other architectures.

Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
Signed-off-by: Alexander Gordeev <agordeev@linux.ibm.com>
2024-04-17 13:38:03 +02:00

13 lines
238 B
ArmAsm

/* SPDX-License-Identifier: GPL-2.0 */
#include <asm/nospec-insn.h>
#include <linux/linkage.h>
.macro GEN_ALL_BR_THUNK_EXTERN
.irp r1,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15
GEN_BR_THUNK_EXTERN %r\r1
.endr
.endm
GEN_ALL_BR_THUNK_EXTERN