linux-stable/arch/s390/kernel
Alexander Gordeev 29ccaa4b35 s390/mcck: isolate SIE instruction when setting CIF_MCCK_GUEST flag
Commit d768bd892f ("s390: add options to change branch prediction
behaviour for the kernel") introduced .Lsie_exit label - supposedly
to fence off SIE instruction. However, the corresponding address
range length .Lsie_crit_mcck_length was not updated, which led to
BPON code potentionally marked with CIF_MCCK_GUEST flag.

Both .Lsie_exit and .Lsie_crit_mcck_length were removed with commit
0b0ed657fe ("s390: remove critical section cleanup from entry.S"),
but the issue persisted - currently BPOFF and BPENTER macros might
get wrongly considered by the machine check handler as a guest.

Fixes: d768bd892f ("s390: add options to change branch prediction behaviour for the kernel")
Reviewed-by: Sven Schnelle <svens@linux.ibm.com>
Reviewed-by: Christian Borntraeger <borntraeger@linux.ibm.com>
Signed-off-by: Alexander Gordeev <agordeev@linux.ibm.com>
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
2022-06-01 12:03:16 +02:00
..
syscalls arch: syscalls: simplify uapi/kapi directory creation 2022-03-31 12:03:46 +09:00
vdso32 s390/vdso: remove -nostdlib compiler flag 2021-11-16 12:29:19 +01:00
vdso64 s390/vdso: filter out -mstack-guard and -mstack-size 2021-11-16 12:29:19 +01:00
.gitignore
alternative.c s390/alternatives: remove padding generation code 2022-05-17 15:16:28 +02:00
asm-offsets.c s390: generate register offsets into pt_regs automatically 2022-05-25 11:46:02 +02:00
audit.c
audit.h
cache.c s390: raise minimum supported machine generation to z10 2022-03-10 15:58:17 +01:00
compat_audit.c
compat_linux.c
compat_linux.h s390/compat: cleanup compat_linux.h header file 2022-05-06 20:45:16 +02:00
compat_ptrace.h
compat_signal.c s390/signal: fix typo in comments 2022-03-08 00:33:01 +01:00
cpcmd.c
crash_dump.c s390/maccess: fix semantics of memcpy_real() and its callers 2022-02-09 22:56:04 +01:00
debug.c
diag.c s390/extable: move EX_TABLE define to asm-extable.h 2022-03-08 00:33:00 +01:00
dis.c s390/disassembler: update opcode table 2021-12-16 19:58:07 +01:00
dumpstack.c exit: Add and use make_task_dead. 2021-12-13 12:04:45 -06:00
early.c s390: simplify early program check handler 2022-05-25 11:46:02 +02:00
early_printk.c
earlypgm.S s390: generate register offsets into pt_regs automatically 2022-05-25 11:46:02 +02:00
ebcdic.c
entry.h s390: simplify early program check handler 2022-05-25 11:46:02 +02:00
entry.S s390/mcck: isolate SIE instruction when setting CIF_MCCK_GUEST flag 2022-06-01 12:03:16 +02:00
fpu.c
ftrace.c s390: convert ".insn" encoding to instruction names 2022-03-10 15:58:17 +01:00
ftrace.h s390: raise minimum supported machine generation to z10 2022-03-10 15:58:17 +01:00
guarded_storage.c
head64.S s390: remove invalid email address of Heiko Carstens 2022-02-06 23:31:29 +01:00
idle.c
ima_arch.c
ipl.c s390/maccess: rework absolute lowcore accessors 2022-03-27 22:18:39 +02:00
ipl_vmparm.c
irq.c s390/irq: utilize RCU instead of irq_lock_sparse() in show_msi_interrupt() 2022-04-27 12:53:34 +02:00
jump_label.c
kdebugfs.c
kexec_elf.c
kexec_image.c
kprobes.c s390/kprobes: enable kretprobes framepointer verification 2022-03-27 22:18:39 +02:00
kprobes_insn_page.S
lgr.c s390/lgr: use simple assignment instead of memcpy 2022-02-06 23:31:29 +01:00
machine_kexec.c s390/kexec: set end-of-ipl flag in last diag308 call 2022-04-25 13:54:12 +02:00
machine_kexec_file.c s390/kexec: handle R_390_PLT32DBL rela in arch_kexec_apply_relocations_add() 2021-12-10 16:12:34 +01:00
machine_kexec_reloc.c
Makefile s390: simplify early program check handler 2022-05-25 11:46:02 +02:00
mcount.S s390/kprobes: Avoid additional kprobe in kretprobe handling 2022-03-10 15:58:17 +01:00
module.c Merge branch 'akpm' (patches from Andrew) 2022-03-25 10:21:20 -07:00
nmi.c s390/pai: add support for cryptography counters 2022-05-09 11:50:01 +02:00
nospec-branch.c s390: raise minimum supported machine generation to z10 2022-03-10 15:58:17 +01:00
nospec-sysfs.c
numa.c drivers/base/node: consolidate node device subsystem initialization in node_dev_init() 2022-03-22 15:57:10 -07:00
os_info.c s390/maccess: rework absolute lowcore accessors 2022-03-27 22:18:39 +02:00
perf_cpum_cf.c s390: raise minimum supported machine generation to z10 2022-03-10 15:58:17 +01:00
perf_cpum_cf_common.c s390/cpumf: Support for CPU Measurement Facility CSVN 7 2022-01-17 14:13:08 +01:00
perf_cpum_cf_events.c s390/cpumf: add new extended counter set for IBM z16 2022-05-16 10:58:33 +02:00
perf_cpum_sf.c s390/cpumf: Support for CPU Measurement Sampling Facility LS bit 2022-01-17 14:13:08 +01:00
perf_event.c s390/perf: obtain sie_block from the right address 2022-05-25 11:46:02 +02:00
perf_pai_crypto.c s390/pai: add support for cryptography counters 2022-05-09 11:50:01 +02:00
perf_regs.c
process.c s390/exit: remove dead reference to do_exit from copy_thread 2021-12-16 19:58:06 +01:00
processor.c s390: add z16 elf platform 2022-04-06 13:08:50 +02:00
ptrace.c ptrace: Cleanups for v5.18 2022-03-28 17:29:53 -07:00
reipl.S
relocate_kernel.S s390/kexec: set end-of-ipl flag in last diag308 call 2022-04-25 13:54:12 +02:00
runtime_instr.c
setup.c s390/smp: sort out physical vs virtual CPU0 lowcore pointer 2022-04-25 13:54:13 +02:00
signal.c ptrace: Cleanups for v5.18 2022-03-28 17:29:53 -07:00
smp.c s390/smp: use physical address for SIGP_SET_PREFIX command 2022-03-27 22:18:39 +02:00
stacktrace.c s390: remove invalid email address of Heiko Carstens 2022-02-06 23:31:29 +01:00
sthyi.c
syscall.c
sysinfo.c s390/extable: move EX_TABLE define to asm-extable.h 2022-03-08 00:33:00 +01:00
text_amode31.S s390/extable: move EX_TABLE define to asm-extable.h 2022-03-08 00:33:00 +01:00
time.c s390/stp: clock_delta should be signed 2022-05-11 14:40:57 +02:00
topology.c s390: remove invalid email address of Heiko Carstens 2022-02-06 23:31:29 +01:00
trace.c
traps.c s390/traps: improve panic message for translation-specification exception 2022-03-27 22:18:38 +02:00
unwind_bc.c s390/unwind: avoid duplicated unwinding entries for kretprobes 2022-03-27 22:18:39 +02:00
uprobes.c s390: raise minimum supported machine generation to z10 2022-03-10 15:58:17 +01:00
uv.c s390/uv: fix memblock virtual vs physical address confusion 2021-12-16 19:58:07 +01:00
vdso.c s390/vdso: add vdso randomization 2022-04-25 13:54:15 +02:00
vmlinux.lds.S s390: remove .fixup section 2022-03-08 00:33:01 +01:00
vtime.c s390: assume stckf is always present 2022-03-10 15:58:17 +01:00