diff options
author | Vasily Gorbik <gor@linux.ibm.com> | 2024-01-17 11:50:49 +0100 |
---|---|---|
committer | Alexander Gordeev <agordeev@linux.ibm.com> | 2024-04-17 13:38:03 +0200 |
commit | ba05b39d54eef78043b5c8ee90545cb06a98ae6f (patch) | |
tree | 418a03082771eedde694ef99a12334276b3e21d7 /arch/s390/Makefile | |
parent | ea84f14d2a6b1a4fde17d2713dbdfdef7b84da87 (diff) | |
download | lwn-ba05b39d54eef78043b5c8ee90545cb06a98ae6f.tar.gz lwn-ba05b39d54eef78043b5c8ee90545cb06a98ae6f.zip |
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>
Diffstat (limited to 'arch/s390/Makefile')
-rw-r--r-- | arch/s390/Makefile | 6 |
1 files changed, 0 insertions, 6 deletions
diff --git a/arch/s390/Makefile b/arch/s390/Makefile index 2dbb2d2f22f9..64821f54f1e0 100644 --- a/arch/s390/Makefile +++ b/arch/s390/Makefile @@ -88,7 +88,6 @@ endif ifdef CONFIG_EXPOLINE ifdef CONFIG_EXPOLINE_EXTERN - KBUILD_LDFLAGS_MODULE += arch/s390/lib/expoline/expoline.o CC_FLAGS_EXPOLINE := -mindirect-branch=thunk-extern CC_FLAGS_EXPOLINE += -mfunction-return=thunk-extern else @@ -167,11 +166,6 @@ vdso_prepare: prepare0 vdso-install-y += arch/s390/kernel/vdso64/vdso64.so.dbg vdso-install-$(CONFIG_COMPAT) += arch/s390/kernel/vdso32/vdso32.so.dbg -ifdef CONFIG_EXPOLINE_EXTERN -modules_prepare: expoline_prepare -expoline_prepare: scripts - $(Q)$(MAKE) $(build)=arch/s390/lib/expoline arch/s390/lib/expoline/expoline.o -endif endif # Don't use tabs in echo arguments |