linux/arch/powerpc
Nicholas Piggin 107c55005f powerpc/pseries: Add KVM guest doorbell restrictions
KVM guests have certain restrictions and performance quirks when using
doorbells. This patch moves the EPAPR KVM guest test so it can be shared
with PSERIES, and uses that in doorbell setup code to apply the KVM
guest quirks and  improves IPI performance for two cases:

 - PowerVM guests may now use doorbells even if they are secure.

 - KVM guests no longer use doorbells if XIVE is available.

There is a valid complaint that "KVM guest" is not a very reasonable
thing to test for, it's preferable for the hypervisor to advertise
particular behaviours to the guest so they could change if the
hypervisor implementation or configuration changes. However in this case
we were already assuming a KVM guest worst case, so this patch is about
containing those quirks. If KVM later advertises fast doorbells, we
should test for that and override the quirks.

Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
Tested-by: Cédric Le Goater <clg@kaod.org>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20200726035155.1424103-4-npiggin@gmail.com
2020-07-29 21:02:10 +10:00
..
boot powerpc/boot/dts: Fix dtc "pciex" warnings 2020-06-30 14:38:00 +10:00
configs powerpc/64s/hash: Disable subpage_prot syscall by default 2020-07-22 00:01:25 +10:00
crypto powerpc: Replace HTTP links with HTTPS ones 2020-07-22 00:01:23 +10:00
include powerpc/pseries: Add KVM guest doorbell restrictions 2020-07-29 21:02:10 +10:00
kernel powerpc/pseries: Add KVM guest doorbell restrictions 2020-07-29 21:02:10 +10:00
kexec powerpc/book3s64/keys/kuap: Reset AMR/IAMR values on kexec 2020-07-20 22:57:59 +10:00
kvm powerpc/watchpoint: Rename current H_SET_MODE DAWR macro 2020-07-26 23:34:19 +10:00
lib powerpc/lib: remove memcpy_flushcache redundant return 2020-07-27 00:01:31 +10:00
math-emu
mm powerpc/ptdump: Refactor update of pg_state 2020-07-27 00:01:31 +10:00
net powerpc/ppc-opcode: Consolidate powerpc instructions from bpf_jit.h 2020-07-16 13:12:42 +10:00
oprofile maccess: rename probe_user_{read,write} to copy_{from,to}_user_nofault 2020-06-17 10:57:41 -07:00
perf powerpc/perf: BHRB control to disable BHRB logic when not used 2020-07-22 21:56:42 +10:00
platforms powerpc/pseries: Add KVM guest doorbell restrictions 2020-07-29 21:02:10 +10:00
purgatory .gitignore: add SPDX License Identifier 2020-03-25 11:50:48 +01:00
sysdev powerpc/xive: Ignore kmemleak false positives 2020-06-22 10:37:57 +10:00
tools powerpc/64s: allow for clang's objdump differences 2020-07-27 00:01:29 +10:00
xmon Merge branch 'scv' support into next 2020-07-23 17:43:44 +10:00
Kbuild
Kconfig powerpc/32s: Use dedicated segment for modules with STRICT_KERNEL_RWX 2020-07-27 00:01:30 +10:00
Kconfig.debug powerpc: Remove Xilinx PPC405/PPC440 support 2020-05-28 23:24:34 +10:00
Makefile powerpc/4xx: ppc4xx compile flag optimizations 2020-06-22 14:19:12 +10:00
Makefile.postlink powerpc: Do not consider weak unresolved symbol relocations as bad 2020-01-31 20:17:22 +11:00