linux/arch/powerpc
Jimi Xenidis de801de139 powerpc/icswx: Fix race condition with IPI setting ACOP
There is a race where a thread causes a coprocessor type to be valid
in its own ACOP _and_ in the current context, but it does not
propagate to the ACOP register of other threads in time for them to
use it.  The original code tries to solve this by sending an IPI to
all threads on the system, which is heavy handed, but unfortunately
still provides a window where the icswx is issued by other threads and
the ACOP is not up to date.

This patch detects that the ACOP DSI fault was a "false positive" and
syncs the ACOP and causes the icswx to be replayed.

Signed-off-by: Jimi Xenidis <jimix@pobox.com>
Cc: Anton Blanchard <anton@samba.org>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
2012-03-07 17:06:09 +11:00
..
boot powerpc/mpic: Add "last-interrupt-source" property to override hardware 2012-02-23 10:50:00 +11:00
configs powerpc: remove CONFIG_PPC_ISERIES from the architecture Kconfig files 2012-02-27 11:33:58 +11:00
include/asm powerpc/atomic: Implement atomic*_inc_not_zero 2012-03-07 17:06:08 +11:00
kernel Merge remote-tracking branch 'origin/master' into next 2012-02-27 10:50:11 +11:00
kvm arch/powerpc/kvm/book3s_hv.c: included linux/sched.h twice 2012-02-27 11:33:58 +11:00
lib
math-emu
mm powerpc/icswx: Fix race condition with IPI setting ACOP 2012-03-07 17:06:09 +11:00
net
oprofile
perf powerpc/perf: Move perf core & PMU code into a subdirectory 2012-02-23 10:50:04 +11:00
platforms arch/powerpc/platforms/powernv/setup.c: included asm/xics.h twice 2012-02-27 11:33:59 +11:00
sysdev powerpc/mpic: Fix allocation of reverse-map for multi-ISU mpics 2012-02-27 11:33:58 +11:00
xmon
Kconfig powerpc: remove CONFIG_PPC_ISERIES from the architecture Kconfig files 2012-02-27 11:33:58 +11:00
Kconfig.debug powerpc: remove CONFIG_PPC_ISERIES from the architecture Kconfig files 2012-02-27 11:33:58 +11:00
Makefile powerpc/perf: Move perf core & PMU code into a subdirectory 2012-02-23 10:50:04 +11:00
relocs_check.pl