linux/arch/powerpc
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
..
boot Merge git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc 2006-06-22 22:11:30 -07:00
configs [POWERPC] fix up front-LED Kconfig 2006-07-26 01:26:08 +10:00
kernel [POWERPC] force 64bit mode in fwnmi handlers to workaround firmware bugs 2006-07-29 04:07:08 +10:00
lib Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
math-emu Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
mm [POWERPC] Fix mem= handling when the memory limit is > RMO size 2006-07-26 01:28:24 +10:00
oprofile [PATCH] oprofile: Fix unnecessary cleverness 2006-06-26 09:58:17 -07:00
platforms [POWERPC] Fix new interrupt code (MPIC detection) 2006-07-28 10:53:16 +10:00
sysdev [PATCH] powerpc: fix MPIC OF tree parsing on Apple quad g5 2006-07-10 13:24:20 -07:00
xmon Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
Kconfig [POWERPC] Add cpufreq support for Xserve G5 2006-07-28 10:51:43 +10:00
Kconfig.debug [POWERPC] Add udbg support for RTAS console 2006-06-28 11:59:48 +10:00
Makefile [POWERPC] Remove stale 64bit on 32bit kernel code 2006-06-15 19:31:26 +10:00