android_kernel_xiaomi_sm8450/arch/s390
Heiko Carstens 0f83d77926 s390/smp,mcck: fix early IPI handling
[ Upstream commit 4a1725281fc5b0009944b1c0e1d2c1dc311a09ec ]

Both the external call as well as the emergency signal submask bits in
control register 0 are set before any interrupt handler is registered.

Change the order and first register the interrupt handler and only then
enable the interrupts by setting the corresponding bits in control
register 0.

This prevents that the second part of the machine check handler for
early machine check handling is not executed: the machine check handler
sends an IPI to the CPU it runs on. If the corresponding interrupts are
enabled, but no interrupt handler is present, the interrupt is ignored.

Reviewed-by: Sven Schnelle <svens@linux.ibm.com>
Acked-by: Alexander Gordeev <agordeev@linux.ibm.com>
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-09-04 13:17:33 +02:00
..
appldata s390/appldata: use struct_size() helper 2020-06-29 16:32:34 +02:00
boot s390/ipl: add missing intersection check to ipl_report handling 2023-03-22 13:30:05 +01:00
configs s390: update defconfigs 2020-11-12 12:10:36 +01:00
crypto crypto: s390/aes - Fix buffer overread in CTR mode 2024-02-23 08:41:53 +01:00
hypfs s390/hypfs: avoid error message under KVM 2022-09-05 10:28:57 +02:00
include s390/uv: Panic for set and remove shared access UVC errors 2024-09-04 13:17:31 +02:00
kernel s390/smp,mcck: fix early IPI handling 2024-09-04 13:17:33 +02:00
kvm KVM: s390: fix setting of fpc register 2024-02-23 08:42:05 +01:00
lib s390/uaccess: add missing earlyclobber annotations to __clear_user() 2023-04-05 11:23:51 +02:00
mm s390/mm: Fix clearing storage keys for huge pages 2024-05-17 11:47:59 +02:00
net bpf, s390: Fix potential memory leak about jit_data 2021-10-13 10:04:29 +02:00
oprofile s390/unwind: introduce stack unwind API 2019-05-02 13:54:11 +02:00
pci s390: use the correct count for __iowrite64_copy() 2024-03-01 13:16:50 +01:00
purgatory s390/purgatory: disable branch profiling 2023-06-28 10:28:15 +02:00
tools .gitignore: add SPDX License Identifier 2020-03-25 11:50:48 +01:00
Kbuild s390/numa: move code to arch/s390/kernel 2020-08-11 18:16:55 +02:00
Kconfig s390: remove unneeded 'select BUILD_BIN2C' 2022-07-07 17:52:18 +02:00
Kconfig.debug s390/mm,ptdump: convert to generic page table dumper 2020-09-14 11:38:34 +02:00
Makefile s390/decompressor: fix misaligned symbol build error 2023-07-27 08:44:31 +02:00