android_kernel_samsung_a7y1.../arch/powerpc/kernel
Nicholas Piggin c7f576a231 powerpc/64s/exception: machine check use correct cfar for late handler
[ Upstream commit 0b66370c61fcf5fcc1d6901013e110284da6e2bb ]

Bare metal machine checks run an "early" handler in real mode before
running the main handler which reports the event.

The main handler runs exactly as a normal interrupt handler, after the
"windup" which sets registers back as they were at interrupt entry.
CFAR does not get restored by the windup code, so that will be wrong
when the handler is run.

Restore the CFAR to the saved value before running the late handler.

Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20190802105709.27696-8-npiggin@gmail.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
2020-04-07 07:43:15 +02:00
..
vdso32 A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
vdso64 A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
align.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
asm-offsets.c powerpc/64s: Improve RFI L1-D cache flush fallback 2020-04-06 16:38:58 +02:00
audit.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
btext.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
cacheinfo.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
cacheinfo.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
compat_audit.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
cpu_setup_6xx.S A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
cpu_setup_44x.S A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
cpu_setup_fsl_booke.S A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
cpu_setup_pa6t.S A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
cpu_setup_power.S A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
cpu_setup_ppc970.S A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
cputable.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
crash_dump.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
crash.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
dbell.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
dma-iommu.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
dma-swiotlb.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
dma.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
eeh_cache.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
eeh_dev.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
eeh_driver.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
eeh_event.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
eeh_pe.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
eeh_sysfs.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
eeh.c powerpc/eeh: Handle hugepages in ioremap space 2020-04-06 20:16:17 +02:00
entry_32.S powerpc/fsl: Sanitize the syscall table for NXP PowerPC 32 bit platforms 2020-04-06 16:40:59 +02:00
entry_64.S powerpc/fsl: Flush the branch predictor at each kernel entry (64bit) 2020-04-06 16:40:19 +02:00
epapr_hcalls.S A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
epapr_paravirt.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
exceptions-64e.S powerpc/fsl: Fix the flush of branch predictor. 2020-04-06 16:40:24 +02:00
exceptions-64s.S powerpc/64s/exception: machine check use correct cfar for late handler 2020-04-07 07:43:15 +02:00
fadump.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
firmware.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
fpu.S A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
fsl_booke_entry_mapping.S A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ftrace.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
head_8xx.S A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
head_32.S A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
head_40x.S A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
head_44x.S A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
head_64.S A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
head_booke.h powerpc/fsl: Fixed warning: orphan section `__btb_flush_fixup' 2020-04-06 16:41:01 +02:00
head_fsl_booke.S powerpc/fsl: Flush the branch predictor at each kernel entry (32 bit) 2020-04-06 16:40:57 +02:00
hw_breakpoint.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ibmebus.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
idle_6xx.S A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
idle_book3e.S A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
idle_e500.S A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
idle_power4.S A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
idle_power7.S A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
idle.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
io-workarounds.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
io.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
iomap.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
iommu.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
irq.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
isa-bridge.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
jump_label.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
kgdb.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
kprobes.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
kvm_emul.S A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
kvm.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
l2cr_6xx.S A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
legacy_serial.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
machine_kexec_32.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
machine_kexec_64.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
machine_kexec.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
Makefile powerpc/64: Add CONFIG_PPC_BARRIER_NOSPEC 2020-04-06 16:39:55 +02:00
mce_power.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
mce.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
misc_32.S A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
misc_64.S A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
misc.S A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
module_32.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
module_64.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
module.c powerpc/64: Add CONFIG_PPC_BARRIER_NOSPEC 2020-04-06 16:39:55 +02:00
msi.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
nvram_64.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
of_platform.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
paca.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
pci_32.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
pci_64.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
pci_dn.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
pci_of_scan.c powerpc/pci/of: Fix OF flags parsing for 64bit BARs 2020-04-06 20:06:08 +02:00
pci-common.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
pci-hotplug.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
pmc.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ppc_ksyms_32.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ppc_ksyms.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ppc_save_regs.S A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ppc32.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
proc_powerpc.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
process.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
prom_init_check.sh A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
prom_init.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
prom_parse.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
prom.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ptrace.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ptrace32.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
reloc_32.S A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
reloc_64.S A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtas_flash.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtas_pci.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtas-proc.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtas-rtc.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtas.c powerpc/rtas: use device model APIs and serialization during LPM 2020-04-07 07:42:58 +02:00
rtasd.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
security.c powerpc/64s: Include cpu header 2020-04-06 17:01:27 +02:00
setup_32.c powerpc/fsl: Enable runtime patching if nospectre_v2 boot arg is used 2020-04-06 16:40:52 +02:00
setup_64.c powerpc/fsl: Enable runtime patching if nospectre_v2 boot arg is used 2020-04-06 16:40:52 +02:00
setup-common.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
signal_32.c powerpc/tm: Fix oops on sigreturn on systems without TM 2020-04-06 20:16:50 +02:00
signal_64.c powerpc/tm: Fix oops on sigreturn on systems without TM 2020-04-06 20:16:50 +02:00
signal.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
signal.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
smp-tbsync.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
smp.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
stacktrace.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
suspend.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
swsusp_32.S powerpc/32s: fix suspend/resume when IBATs 4-7 are used 2020-04-06 20:04:51 +02:00
swsusp_64.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
swsusp_asm64.S A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
swsusp_booke.S A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
swsusp.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
sys_ppc32.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
syscalls.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
sysfs.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
systbl_chk.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
systbl_chk.sh A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
systbl.S A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
tau_6xx.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
time.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
tm.S A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
trace_clock.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
traps.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
udbg_16550.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
udbg.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
uprobes.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
vdso.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
vecemu.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
vector.S A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
vio.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
vmlinux.lds.S powerpc/fsl: Add infrastructure to fixup branch predictor flush 2020-04-06 16:40:12 +02:00