aboutsummaryrefslogtreecommitdiffstats
path: root/arch/s390/Kconfig
diff options
context:
space:
mode:
authorSven Schnelle <svens@linux.ibm.com>2021-06-25 14:50:08 +0200
committerVasily Gorbik <gor@linux.ibm.com>2021-07-08 15:37:28 +0200
commit779df2248739b6308c03b354c99e4c352141e3bc (patch)
tree952ac56aee397e3d16bdecf4e4d9afa866b48978 /arch/s390/Kconfig
parents390/vdso: rename VDSO64_LBASE to VDSO_LBASE (diff)
downloadlinux-dev-779df2248739b6308c03b354c99e4c352141e3bc.tar.xz
linux-dev-779df2248739b6308c03b354c99e4c352141e3bc.zip
s390/vdso: add minimal compat vdso
Add a small vdso for 31 bit compat application that provides trampolines for calls to sigreturn,rt_sigreturn,syscall_restart. This is requird for moving these syscalls away from the signal frame to the vdso. Note that this patch effectively disables CONFIG_COMPAT when using clang to compile the kernel. clang doesn't support 31 bit mode. We want to redirect sigreturn and restart_syscall to the vdso. However, the kernel cannot parse the ELF vdso file, so we need to generate header files which contain the offsets of the syscall instructions in the vdso page. Signed-off-by: Sven Schnelle <svens@linux.ibm.com> Reviewed-by: Heiko Carstens <hca@linux.ibm.com> Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
Diffstat (limited to 'arch/s390/Kconfig')
-rw-r--r--arch/s390/Kconfig1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/s390/Kconfig b/arch/s390/Kconfig
index ceaa50947d64..a0e2130f0100 100644
--- a/arch/s390/Kconfig
+++ b/arch/s390/Kconfig
@@ -437,6 +437,7 @@ config COMPAT
select COMPAT_OLD_SIGACTION
select HAVE_UID16
depends on MULTIUSER
+ depends on !CC_IS_CLANG
help
Select this option if you want to enable your system kernel to
handle system-calls from ELF binaries for 31 bit ESA. This option