37cd8ed90f
There have been a series of checkstops on QS21 related to ptcal being set up incorrectly. On systems that only have memory on a single node, ptcal fails when it gets a pointer to memory on the remote node. Moreover, agressive prefetching in memcpy and other functions may accidentally touch the first cache line of the page that we reserve for ptcal, which causes an ECC checkstop. We now allocate pages only from the specified node, moves the ptcal area into the middle of the allocated page to avoid potential prefetch problems and prints the address of the ptcal area to facilitate diagnostics. Signed-off-by: Gerhard Stenzel <gerhard.stenzel@de.ibm.com> Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> |
||
---|---|---|
.. | ||
spufs | ||
axon_msi.c | ||
beat_htab.c | ||
beat_hvCall.S | ||
beat_interrupt.c | ||
beat_interrupt.h | ||
beat_iommu.c | ||
beat_smp.c | ||
beat_spu_priv1.c | ||
beat_syscall.h | ||
beat_udbg.c | ||
beat_wrapper.h | ||
beat.c | ||
beat.h | ||
cbe_cpufreq_pervasive.c | ||
cbe_cpufreq_pmi.c | ||
cbe_cpufreq.c | ||
cbe_cpufreq.h | ||
cbe_powerbutton.c | ||
cbe_regs.c | ||
cbe_thermal.c | ||
celleb_pci.c | ||
celleb_pci.h | ||
celleb_scc_epci.c | ||
celleb_scc_pciex.c | ||
celleb_scc_sio.c | ||
celleb_scc_uhc.c | ||
celleb_scc.h | ||
celleb_setup.c | ||
cpufreq_spudemand.c | ||
interrupt.c | ||
interrupt.h | ||
io-workarounds.c | ||
io-workarounds.h | ||
iommu.c | ||
Kconfig | ||
Makefile | ||
pervasive.c | ||
pervasive.h | ||
pmu.c | ||
qpace_setup.c | ||
ras.c | ||
ras.h | ||
setup.c | ||
smp.c | ||
spider-pci.c | ||
spider-pic.c | ||
spu_base.c | ||
spu_callbacks.c | ||
spu_fault.c | ||
spu_manage.c | ||
spu_notify.c | ||
spu_priv1_mmio.c | ||
spu_priv1_mmio.h | ||
spu_syscalls.c |