linux/arch/powerpc
Geoff Levand 72f3bea075 powerpc/ps3: Fix lost SMP IPIs
Fixes the PS3 bootup hang introduced in 3.0-rc1 by:

  commit 317f394160
  sched: Move the second half of ttwu() to the remote cpu

Move the PS3's LV1 EOI call lv1_end_of_interrupt_ext() from ps3_chip_eoi()
to ps3_get_irq() for IPI messages.

If lv1_send_event_locally() is called between a previous call to
lv1_send_event_locally() and the coresponding call to
lv1_end_of_interrupt_ext() the second event will not be delivered to the
target cpu.

The PS3's SMP IPIs are implemented using lv1_send_event_locally(), so if two
IPI messages of the same type are sent to the same target in a relatively
short period of time the second IPI event can become lost when
lv1_end_of_interrupt_ext() is called from ps3_chip_eoi().

CC: stable@kernel.org
Signed-off-by: Geoff Levand <geoff@infradead.org>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
2011-11-16 14:47:54 +11:00
..
boot Merge remote-tracking branch 'agust/next' into merge 2011-11-08 14:53:55 +11:00
configs Merge remote-tracking branch 'agust/next' into merge 2011-11-08 14:53:55 +11:00
include/asm powerpc: Copy down exception vectors after feature fixups 2011-11-16 14:47:54 +11:00
kernel powerpc/trace: Add a dummy stack frame for trace_hardirqs_off 2011-11-16 14:47:54 +11:00
kvm powerpc: Add hvcall.h include to book3s_hv.c 2011-11-16 14:47:54 +11:00
lib powerpc: Copy down exception vectors after feature fixups 2011-11-16 14:47:54 +11:00
math-emu powerpc/math_emu/efp: Look for errata handler when type mismatches 2011-10-06 23:36:47 -05:00
mm powerpc/numa: NUMA topology support for PowerNV 2011-11-08 14:51:46 +11:00
net net: filter: BPF 'JIT' compiler for PPC64 2011-07-21 12:38:32 -07:00
oprofile powerpc/oprofile: Handle events that raise an exception without overflowing 2011-05-26 13:38:57 +10:00
platforms powerpc/ps3: Fix lost SMP IPIs 2011-11-16 14:47:54 +11:00
sysdev Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux 2011-11-15 14:47:28 -02:00
xmon Merge branch 'modsplit-Oct31_2011' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux 2011-11-06 19:44:47 -08:00
Kconfig powerpc/4xx: Fix typos in kexec config dependencies 2011-11-16 14:47:54 +11:00
Kconfig.debug powerpc/powernv: Support for OPAL console 2011-09-20 16:09:54 +10:00
Makefile Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc 2011-07-25 22:59:39 -07:00
relocs_check.pl