linux/arch/s390/kernel
Gerald Schaefer ac49303d9e s390/kaslr: add support for R_390_GLOB_DAT relocation type
Commit "bpf: Process in-kernel BTF" in linux-next introduced an undefined
__weak symbol, which results in an R_390_GLOB_DAT relocation type. That
is not yet handled by the KASLR relocation code, and the kernel stops with
the message "Unknown relocation type".

Add code to detect and handle R_390_GLOB_DAT relocation types and undefined
symbols.

Fixes: 805bc0bc23 ("s390/kernel: build a relocatable kernel")
Cc: <stable@vger.kernel.org> # v5.2+
Acked-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Gerald Schaefer <gerald.schaefer@de.ibm.com>
Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
2019-10-22 17:55:51 +02:00
..
syscalls s390: wire up clone3 system call 2019-07-23 10:45:53 +02:00
vdso32 s390/vdso: drop unnecessary cc-ldoption 2019-05-03 17:17:58 +02:00
vdso64 s390/vdso: drop unnecessary cc-ldoption 2019-05-03 17:17:58 +02:00
.gitignore
alternative.c s390: add automatic detection of the spectre defense 2018-03-28 08:38:24 +02:00
asm-offsets.c s390/unwind: introduce stack unwind API 2019-05-02 13:54:11 +02:00
audit.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
audit.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
base.S s390/base: remove unused s390_base_mcck_handler 2019-09-03 13:53:56 +02:00
cache.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
compat_audit.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
compat_linux.c s390: use generic UID16 implementation 2019-01-18 09:33:18 +01:00
compat_linux.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
compat_ptrace.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
compat_signal.c signal: Remove task parameter from force_sig 2019-05-27 09:36:28 -05:00
cpcmd.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
crash_dump.c memblock: memblock_phys_alloc(): don't panic 2019-03-12 10:04:01 -07:00
debug.c docs: s390: unify and update s390dbf kdocs at debug.c 2019-07-05 13:42:22 +02:00
diag.c s390/kernel: introduce .dma sections 2019-04-29 10:47:10 +02:00
dis.c s390/disassembler: update opcode table 2019-06-04 15:03:58 +02:00
dumpstack.c s390/unwind: remove stack recursion warning 2019-08-06 13:58:35 +02:00
early_printk.c s390/sclp: avoid using strncmp with hardcoded length 2019-08-29 15:34:58 +02:00
early.c s390: clean .bss before running uncompressed kernel 2019-08-21 12:58:52 +02:00
ebcdic.c s390: ebcdic: convert comments to UTF-8 2018-08-23 18:48:43 -07:00
entry.h PM: hibernate: powerpc: Expose pfn_is_nosave() prototype 2019-06-14 10:48:56 +02:00
entry.S s390: enforce CONFIG_SMP 2019-06-07 10:09:37 +02:00
fpu.c s390: correct some inline assembly constraints 2019-04-17 10:40:57 +02:00
ftrace.c s390/ftrace: use HAVE_FUNCTION_GRAPH_RET_ADDR_PTR 2019-05-02 13:54:11 +02:00
guarded_storage.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux 2017-11-13 11:47:01 -08:00
head64.S s390 updates for the 5.4 merge window 2019-09-17 14:04:43 -07:00
idle.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
ima_arch.c s390/kexec_file: Disable kexec_load when IPLed secure 2019-04-29 10:44:03 +02:00
ipl_vmparm.c s390/ipl: provide uapi header for list directed IPL 2019-04-26 12:34:05 +02:00
ipl.c s390/protvirt: avoid memory sharing for diag 308 set/store 2019-08-06 13:58:34 +02:00
irq.c s390/unwind: introduce stack unwind API 2019-05-02 13:54:11 +02:00
jump_label.c s390/jump_label: remove unused structure definition 2019-06-07 10:10:10 +02:00
kdebugfs.c s390: no need to check return value of debugfs_create functions 2019-01-28 15:58:55 +01:00
kexec_elf.c kexec: Fix file verification on S390 2019-09-10 13:27:51 +01:00
kexec_image.c kexec_file: split KEXEC_VERIFY_SIG into KEXEC_SIG and KEXEC_SIG_FORCE 2019-08-19 21:54:15 -07:00
kprobes.c s390/kernel: introduce .dma sections 2019-04-29 10:47:10 +02:00
lgr.c s390: kernel: add SPDX identifiers to the remaining files 2017-11-24 15:37:12 +01:00
machine_kexec_file.c Merge branch 'next-lockdown' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security 2019-09-28 08:14:15 -07:00
machine_kexec_reloc.c s390/kaslr: add support for R_390_GLOB_DAT relocation type 2019-10-22 17:55:51 +02:00
machine_kexec.c s390/kdump: get rid of compile warning 2019-06-11 09:48:39 +02:00
Makefile s390: clean .bss before running uncompressed kernel 2019-08-21 12:58:52 +02:00
mcount.S s390/ftrace: use HAVE_FUNCTION_GRAPH_RET_ADDR_PTR 2019-05-02 13:54:11 +02:00
module.c s390/module: avoid using strncmp with hardcoded length 2019-08-29 15:34:57 +02:00
nmi.c s390: simplify disabled_wait 2019-05-02 13:54:11 +02:00
nospec-branch.c s390 updates for the 5.2 merge window 2019-05-06 16:42:54 -07:00
nospec-sysfs.c s390: Convert IS_ENABLED uses to __is_defined 2019-04-11 13:36:53 +02:00
os_info.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
perf_cpum_cf_common.c s390/cpum_cf: move common functions into a separate file 2019-02-22 09:19:55 +01:00
perf_cpum_cf_diag.c s390/cpumf: Use consistant debug print format 2019-10-01 09:41:36 +02:00
perf_cpum_cf_events.c s390/cpumf: Add extended counter set definitions for model 8561 and 8562 2019-07-11 20:40:01 +02:00
perf_cpum_cf.c s390/cpum_cf: Add support for CPU-MF SVN 6 2019-03-29 07:23:50 +01:00
perf_cpum_sf.c s390/cpumf: Fix indentation in sampling device driver 2019-10-01 09:41:36 +02:00
perf_event.c s390/unwind: introduce stack unwind API 2019-05-02 13:54:11 +02:00
perf_regs.c s390/perf: fix gcc 8 array-bounds warning 2018-07-02 11:24:54 +02:00
pgm_check.S s390/kernel: convert SYSCALL and PGM_CHECK handlers to .quad 2019-04-29 10:47:10 +02:00
process.c s390/kasan: avoid report in get_wchan 2019-08-21 12:58:53 +02:00
processor.c processor: get rid of cpu_relax_yield 2019-06-15 12:25:55 +02:00
ptrace.c arch: mostly remove <asm/segment.h> 2019-04-23 21:51:40 +02:00
reipl.S s390: add missing ENDPROC statements to assembler functions 2019-05-02 13:54:11 +02:00
relocate_kernel.S s390: add missing ENDPROC statements to assembler functions 2019-05-02 13:54:11 +02:00
runtime_instr.c s390/runtime_instrumentation: re-add signum system call parameter 2018-02-05 07:34:50 +01:00
setup.c s390 updates for the 5.4 merge window 2019-09-17 14:04:43 -07:00
signal.c signal: Remove task parameter from force_sig 2019-05-27 09:36:28 -05:00
smp.c s390: improve wait logic of stop_machine 2019-06-15 12:25:52 +02:00
stacktrace.c s390/stacktrace: use common arch_stack_walk infrastructure 2019-08-21 12:58:53 +02:00
sthyi.c s390/sthyi: Fix machine name validity indication 2018-10-15 12:17:00 +02:00
suspend.c s390: unify linker symbols usage 2018-02-27 08:05:23 +01:00
swsusp.S s390: enforce CONFIG_SMP 2019-06-07 10:09:37 +02:00
sys_s390.c s390: autogenerate compat syscall wrappers 2019-01-18 09:33:19 +01:00
sysinfo.c s390: no need to check return value of debugfs_create functions 2019-01-28 15:58:55 +01:00
time.c s390/time: Remove read_boot_clock64() 2018-07-20 00:02:41 +02:00
topology.c s390/topology: avoid firing events before kobjs are created 2019-09-23 23:27:52 +02:00
trace.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
traps.c Merge branch 'siginfo-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace 2019-07-08 21:48:15 -07:00
unwind_bc.c s390/unwind: avoid int overflow in outside_of_stack 2019-07-11 20:40:02 +02:00
uprobes.c s390/uprobes: implement arch_uretprobe_is_alive() 2018-04-23 07:57:16 +02:00
vdso.c s390 updates for the 5.4 merge window 2019-09-17 14:04:43 -07:00
vmlinux.lds.S s390: put _stext and _etext into .text section 2019-08-06 13:58:35 +02:00
vtime.c s390: correct some inline assembly constraints 2019-04-17 10:40:57 +02:00