kernel-fxtec-pro1x/arch
Mark Nelson 36350e0069 powerpc/pseries: Fix kexec regression caused by CPPR tracking
The code to track the CPPR values added by commit
49bd364713 ("powerpc/pseries: Track previous
CPPR values to correctly EOI interrupts") broke kexec on pseries because
the kexec code in xics.c calls xics_set_cpu_priority() before the IPI has
been EOI'ed. This wasn't a problem previously but it now triggers a BUG_ON
in xics_set_cpu_priority() because os_cppr->index isn't 0.

Fix this problem by setting the index on the CPPR stack to 0 before calling
xics_set_cpu_priority() in xics_teardown_cpu().

Also make it clear that we only want to set the priority when there's just
one CPPR value in the stack, and enforce it by updating the value of
os_cppr->stack[0] rather than os_cppr->stack[os_cppr->index].

While we're at it change the BUG_ON to a WARN_ON.

Reported-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Mark Nelson <markn@au1.ibm.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
2010-02-08 15:29:19 +11:00
..
alpha alpha: cpumask_of_node() should handle -1 as a node 2010-01-14 13:21:35 -05:00
arm [ARM] Update mach-types 2010-01-28 22:17:45 +00:00
avr32 Merge branch 'for-33' of git://repo.or.cz/linux-kbuild 2009-12-17 07:23:42 -08:00
blackfin blackfin,kgdb: Do not put PC in gdb_regs into retx. 2010-01-07 11:58:37 -06:00
cris Merge branch 'for-33' of git://repo.or.cz/linux-kbuild 2009-12-17 07:23:42 -08:00
frv FDPIC: Respect PT_GNU_STACK exec protection markings when creating NOMMU stack 2010-01-06 18:16:02 -08:00
h8300 Merge branch 'for-33' of git://repo.or.cz/linux-kbuild 2009-12-17 07:23:42 -08:00
ia64 [IA64] move fnptr definition inside #ifdef __KERNEL__ 2010-01-08 10:53:28 -08:00
m32r elf: kill USE_ELF_CORE_DUMP 2009-12-16 07:20:12 -08:00
m68k m68knommu: fix definitions of __pa() and __va() 2010-01-12 20:51:45 -08:00
m68knommu m68knommu: fix invalid flags on coldfire pit clocksource 2010-01-16 12:15:38 -08:00
microblaze microblaze: pci_controller->arch_data really is a struct device_node * 2010-01-18 16:36:07 +01:00
mips Merge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus 2010-02-02 12:45:33 -08:00
mn10300 mn10300: update the ASB2303 defconfig 2010-01-11 09:34:10 -08:00
parisc Merge branch 'for-33' of git://repo.or.cz/linux-kbuild 2009-12-17 07:23:42 -08:00
powerpc powerpc/pseries: Fix kexec regression caused by CPPR tracking 2010-02-08 15:29:19 +11:00
s390 [S390] fix single stepped svcs with TRACE_IRQFLAGS=y 2010-01-27 10:12:49 +01:00
score mm: make totalhigh_pages unsigned long 2010-01-11 09:34:03 -08:00
sh sh: Fix access to released memory in clk_debugfs_register_one() 2010-02-02 11:32:23 +09:00
sparc sparc: TIF_ABI_PENDING bit removal 2010-01-29 08:22:01 -08:00
um Unrot uml mconsole a bit 2010-01-14 09:05:26 -05:00
x86 Merge branch 'perf-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2010-02-01 10:45:00 -08:00
xtensa Merge branch 'for-33' of git://repo.or.cz/linux-kbuild 2009-12-17 07:23:42 -08:00
.gitignore
Kconfig hw-breakpoints: Fix hardware breakpoints -> perf events dependency 2009-12-18 13:11:51 +01:00