kernel-ark/arch
Olaf Hering 9fc0a92c7e [POWERPC] force 64bit mode in fwnmi handlers to workaround firmware bugs
The firmware of POWER4 and JS20 systems does not switch the cpu to 64bit
mode when the registered system_reset and machine_check handlers get called.
If a 32bit process runs on that cpu at the time of the event, the cpu
remains in 32bit mode. xmon and kdump can not deal with it, the result is
an error like 'Bad kernel stack pointer fff2aad0 at 3200'.
xmon just loses some register info, but booting the kdump kernel usually fails.

Both handlers are not hot paths.  Duplicate the EXCEPTION_PROLOG_PSERIES macro
and add two instructions to switch to 64bit:

 li     r11,5;
 rldimi r10,r11,61,0;

Signed-off-by: Olaf Hering <olh@suse.de>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-07-29 04:07:08 +10:00
..
alpha [PATCH] tty: Remove include of screen_info.h from tty.h 2006-07-10 13:24:16 -07:00
arm [ARM] arch/arm/kernel/bios32.c: no need to set isa_bridge 2006-07-13 16:14:26 +01:00
arm26 [PATCH] tty: Remove include of screen_info.h from tty.h 2006-07-10 13:24:16 -07:00
cris [PATCH] pcf8563: remove MOD_INC_USE_COUNT, MOD_DEC_USE_COUNT 2006-07-10 13:24:22 -07:00
frv [PATCH] FRV: Introduce asm-offsets for FRV arch 2006-07-10 13:24:22 -07:00
h8300 [PATCH] irq-flags: H8300: Use the new IRQF_ constants 2006-07-02 13:58:47 -07:00
i386 [PATCH] i386: remove redundant might_sleep() in user accessors. 2006-07-14 21:53:52 -07:00
ia64 [PATCH] make valid_mmap_phys_addr_range() take a pfn 2006-07-10 13:24:25 -07:00
m32r [PATCH] tty: Remove include of screen_info.h from tty.h 2006-07-10 13:24:16 -07:00
m68k [PATCH] irq-flags: M68K: Use the new IRQF_ constants 2006-07-02 13:58:47 -07:00
m68knommu [PATCH] irq-flags: M68KNOMMU: Use the new IRQF_ constants 2006-07-02 13:58:47 -07:00
mips [MIPS] sparsemem: fix crash in show_mem 2006-07-13 21:26:22 +01:00
parisc [PATCH] vt: Remove VT-specific declarations and definitions from tty.h 2006-07-10 13:24:16 -07:00
powerpc [POWERPC] force 64bit mode in fwnmi handlers to workaround firmware bugs 2006-07-29 04:07:08 +10:00
ppc [PATCH] tty: Remove include of screen_info.h from tty.h 2006-07-10 13:24:16 -07:00
s390 [S390] sysfs_create_xxx return values. 2006-07-18 13:46:58 +02:00
sh [PATCH] tty: Remove include of screen_info.h from tty.h 2006-07-10 13:24:16 -07:00
sh64 [PATCH] tty: Remove include of screen_info.h from tty.h 2006-07-10 13:24:16 -07:00
sparc [SPARC]: Fix length parameter verification in sys_getdomainname(). 2006-07-21 14:18:27 -07:00
sparc64 [SPARC64]: Update defconfig. 2006-07-21 14:19:45 -07:00
um [PATCH] UML - fix utsname build breakage 2006-07-15 14:42:24 -07:00
v850 [PATCH] irq-flags: V850: Use the new IRQF_ constants 2006-07-02 13:58:48 -07:00
x86_64 [PATCH] x86_64: Fix access check in ptrace compat 2006-07-10 15:12:33 -07:00
xtensa [PATCH] tty: Remove include of screen_info.h from tty.h 2006-07-10 13:24:16 -07:00