linux/arch/powerpc
Nicholas Piggin 20c0e8269e powerpc/pseries: Implement paravirt qspinlocks for SPLPAR
This implements the generic paravirt qspinlocks using H_PROD and
H_CONFER to kick and wait.

This uses an un-directed yield to any CPU rather than the directed
yield to a pre-empted lock holder that paravirtualised simple
spinlocks use, that requires no kick hcall. This is something that
could be investigated and improved in future.

Performance results can be found in the commit which added queued
spinlocks.

Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Acked-by: Waiman Long <longman@redhat.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20200724131423.1362108-5-npiggin@gmail.com
2020-07-27 00:01:29 +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: Implement paravirt qspinlocks for SPLPAR 2020-07-27 00:01:29 +10:00
kernel powerpc/perf: Initialize power10 PMU registers in cpu setup routine 2020-07-26 23:34:23 +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/64s: Implement queued spinlocks and rwlocks 2020-07-27 00:01:23 +10:00
math-emu
mm powerpc/numa: Limit possible nodes to within num_possible_nodes 2020-07-26 23:34:25 +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: Implement paravirt qspinlocks for SPLPAR 2020-07-27 00:01:29 +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/head_check: Avoid broken pipe 2020-05-19 00:10:35 +10:00
xmon Merge branch 'scv' support into next 2020-07-23 17:43:44 +10:00
Kbuild powerpc/kexec: Move kexec files into a dedicated subdir. 2019-11-21 15:41:34 +11:00
Kconfig powerpc/64s: Implement queued spinlocks and rwlocks 2020-07-27 00:01:23 +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