android_kernel_samsung_sm8650/arch/powerpc
Nicholas Piggin 839d893b40 KVM: PPC: Book3S PR: Disallow AIL != 0
KVM PR does not implement address translation modes on interrupt, so it
must not allow H_SET_MODE to succeed. The behaviour change caused by
this mode is architected and not advisory (interrupts *must* behave
differently).

QEMU does not deal with differences in AIL support in the host. The
solution to that is a spapr capability and corresponding KVM CAP, but
this patch does not break things more than before (the host behaviour
already differs, this change just disallows some modes that are not
implemented properly).

By happy coincidence, this allows PR Linux guests that are using the SCV
facility to boot and run, because Linux disables the use of SCV if AIL
can not be set to 3. This does not fix the underlying problem of missing
SCV support (an OS could implement real-mode SCV vectors and try to
enable the facility). The true fix for that is for KVM PR to emulate scv
interrupts from the facility unavailable interrupt.

Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Reviewed-by: Fabiano Rosas <farosas@linux.ibm.com>
Link: https://lore.kernel.org/r/20220222064727.2314380-3-npiggin@gmail.com
2022-03-08 13:14:00 +11:00
..
boot RTC for 5.17 2022-01-21 13:13:35 +02:00
configs RTC for 5.17 2022-01-21 13:13:35 +02:00
crypto powerpc updates for 5.17 2022-01-14 15:17:26 +01:00
include KVM: PPC: Merge powerpc's debugfs entry content into generic entry 2022-02-02 20:30:26 +11:00
kernel KVM: PPC: Book3S PR: Disable SCV when AIL could be disabled 2022-03-08 13:13:58 +11:00
kexec powerpc/kernel: Add __init attribute to eligible functions 2021-12-23 22:33:10 +11:00
kvm KVM: PPC: Book3S PR: Disallow AIL != 0 2022-03-08 13:14:00 +11:00
lib powerpc/32: Fix boot failure with GCC latent entropy plugin 2021-12-23 22:36:58 +11:00
math-emu powerpc/64s: avoid reloading (H)SRR registers if they are still valid 2021-06-25 00:06:55 +10:00
mm powerpc/fixmap: Fix VM debug warning on unmap 2022-01-24 17:29:05 +11:00
net powerpc64/bpf: Limit 'ldbrx' to processors compliant with ISA v2.06 2022-01-15 12:21:25 +11:00
perf powerpc/perf: Fix power_pmu_disable to call clear_pmi_irq_pending only if PMI is pending 2022-01-24 17:31:15 +11:00
platforms bitmap patches for 5.17-rc1 2022-01-23 06:20:44 +02:00
purgatory powerpc/kexec: Don't use .machine ppc64 in trampoline_64.S 2021-04-08 21:17:43 +10:00
sysdev powerpc updates for 5.17 2022-01-14 15:17:26 +01:00
tools powerpc/head_check: Fix shellcheck errors 2021-08-17 22:52:02 +10:00
xmon powerpc/xmon: Dump XIVE information for online-only processors. 2022-01-06 21:47:00 +11:00
Kbuild kbuild: use more subdir- for visiting subdirectories while cleaning 2021-10-24 13:49:46 +09:00
Kconfig Merge branch 'akpm' (patches from Andrew) 2022-01-20 10:41:01 +02:00
Kconfig.debug powerpc/ptdump: Convert powerpc to GENERIC_PTDUMP 2021-08-25 13:35:48 +10:00
Makefile powerpc: check for support for -Wa,-m{power4,any} 2021-12-23 22:35:12 +11:00
Makefile.postlink powerpc: unrel_branch_check.sh: use nm to find symbol value 2020-09-02 11:00:22 +10:00