OpenCloudOS-Kernel/arch/powerpc
Paul Mackerras bf593907f7 powerpc: Fix emulation of illegal instructions on PowerNV platform
Normally, the kernel emulates a few instructions that are unimplemented
on some processors (e.g. the old dcba instruction), or privileged (e.g.
mfpvr).  The emulation of unimplemented instructions is currently not
working on the PowerNV platform.  The reason is that on these machines,
unimplemented and illegal instructions cause a hypervisor emulation
assist interrupt, rather than a program interrupt as on older CPUs.
Our vector for the emulation assist interrupt just calls
program_check_exception() directly, without setting the bit in SRR1
that indicates an illegal instruction interrupt.  This fixes it by
making the emulation assist interrupt set that bit before calling
program_check_interrupt().  With this, old programs that use no-longer
implemented instructions such as dcba now work again.

CC: <stable@vger.kernel.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
2013-06-15 12:24:11 +10:00
..
boot MMC highlights for 3.10: 2013-05-04 13:45:17 -07:00
configs USB: remove remaining instances of USB_SUSPEND 2013-05-15 13:44:44 -04:00
crypto powerpc: Fix compile of sha1-powerpc-asm.S on 32-bit 2013-03-05 16:56:26 +11:00
include powerpc: Fix stack overflow crash in resume_kernel when ftracing 2013-06-15 12:21:57 +10:00
kernel powerpc: Fix emulation of illegal instructions on PowerNV platform 2013-06-15 12:24:11 +10:00
kvm powerpc/kvm/book3s: Add support for H_IPOLL and H_XIRR_X in XICS emulation 2013-06-01 08:29:27 +10:00
lib powerpc/pseries: Improve stream generation comments in copypage/user 2013-06-01 08:29:26 +10:00
math-emu powerpc/math_emu/efp: Look for errata handler when type mismatches 2011-10-06 23:36:47 -05:00
mm powerpc/mm: Always invalidate tlb on hpte invalidate and update 2013-06-01 08:29:26 +10:00
net filter: bpf_jit_comp: refactor and unify BPF JIT image dump output 2013-03-21 17:25:56 -04:00
oprofile Merge branch 'merge' into next 2013-01-29 11:33:37 +11:00
perf powerpc/perf: Fix deadlock caused by calling printk() in PMU exception 2013-06-10 08:36:32 +10:00
platforms powerpc/eeh: Don't check RTAS token to get PE addr 2013-06-10 08:36:16 +10:00
sysdev powerpc/mpic: Fix irq distribution problem when MPIC_SINGLE_DEST_CPU 2013-06-01 08:29:24 +10:00
xmon Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc 2013-05-02 10:16:16 -07:00
Kconfig Removal of GENERIC_GPIO for v3.10 2013-05-09 09:59:16 -07:00
Kconfig.debug powerpc: Add an in memory udbg console 2013-05-08 06:36:49 +10:00
Makefile powerpc: Avoid load of static chain register when calling nested functions through a pointer on 64bit 2013-01-10 17:01:27 +11:00
relocs_check.pl powerpc: Process dynamic relocations for kernel 2011-12-20 10:21:08 -05:00