linux_dsm_epyc7002/arch/powerpc/platforms/powernv
Gavin Shan d0914f503f powerpc/eeh: Block PCI-CFG access during PE reset
We've observed multiple PE reset failures because of PCI-CFG
access during that period. Potentially, some device drivers
can't support EEH very well and they can't put the device to
motionless state before PE reset. So those device drivers might
produce PCI-CFG accesses during PE reset. Also, we could have
PCI-CFG access from user space (e.g. "lspci"). Since access to
frozen PE should return 0xFF's, we can block PCI-CFG access
during the period of PE reset so that we won't get recrusive EEH
errors.

The patch adds flag EEH_PE_RESET, which is kept during PE reset.
The PowerNV/pSeries PCI-CFG accessors reuse the flag to block
PCI-CFG accordingly.

Signed-off-by: Gavin Shan <gwshan@linux.vnet.ibm.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
2014-04-28 17:34:02 +10:00
..
eeh-ioda.c powerpc/powernv: Move PNV_EEH_STATE_ENABLED around 2014-04-28 17:33:48 +10:00
eeh-powernv.c powerpc/eeh: Cleanup on eeh_subsystem_enabled 2014-02-17 11:19:39 +11:00
Kconfig cpufreq: powernv: Select CPUFreq related Kconfig options for powernv 2014-04-07 14:35:28 +02:00
Makefile powerpc/powernv: Add OPAL message log interface 2014-04-09 12:53:19 +10:00
opal-async.c powerpc/powernv: Fix endian issues with OPAL async code 2014-04-07 10:34:27 +10:00
opal-dump.c powerpc/powernv: Fix little endian issues in OPAL dump code 2014-04-28 13:11:24 +10:00
opal-elog.c powerpc/powernv: Fix little endian issues in OPAL error log code 2014-04-28 13:11:23 +10:00
opal-flash.c powerpc/powernv: Create OPAL sglist helper functions and fix endian issues 2014-04-28 13:11:23 +10:00
opal-lpc.c powerpc/powernv: Fix OPAL LPC access in Little Endian 2013-12-13 15:55:15 +11:00
opal-memory-errors.c powerpc/powernv: Get FSP memory errors and plumb into memory poison infrastructure. 2013-12-09 11:41:14 +11:00
opal-msglog.c powerpc/powernv: Add OPAL message log interface 2014-04-09 12:53:19 +10:00
opal-nvram.c powerpc/powernv: Make OPAL NVRAM device tree accesses endian safe 2013-10-11 16:48:47 +11:00
opal-rtc.c powernv: Remove get/set_rtc_time when they are not present 2013-12-05 16:08:22 +11:00
opal-sensor.c powerpc/powernv: Fix endian issues with sensor code 2014-04-09 12:52:49 +10:00
opal-sysparam.c powerpc/powernv: Check sysparam size before creation 2014-04-28 13:08:49 +10:00
opal-takeover.S powerpc: Merge STK_REG/PARAM/FRAMESIZE 2012-07-10 19:18:03 +10:00
opal-wrappers.S powerpc/powernv: Add invalid OPAL call 2014-04-09 12:53:23 +10:00
opal-xscom.c powerpc/powernv: Fix indirect XSCOM unmangling 2014-02-28 19:15:49 +11:00
opal.c powerpc/powernv: Create OPAL sglist helper functions and fix endian issues 2014-04-28 13:11:23 +10:00
pci-ioda.c powerpc/powernv: Release the refcount for pci_dev 2014-04-28 13:11:20 +10:00
pci-p5ioc2.c PPC: POWERNV: move iommu_add_device earlier 2013-12-05 16:08:17 +11:00
pci.c powerpc/eeh: Block PCI-CFG access during PE reset 2014-04-28 17:34:02 +10:00
pci.h powerpc/powernv: Move PNV_EEH_STATE_ENABLED around 2014-04-28 17:33:48 +10:00
powernv.h powerpc/powernv: Add iommu DMA bypass support for IODA2 2014-02-11 16:07:37 +11:00
rng.c powerpc: Make cpu_to_chip_id() available when SMP=n 2013-11-21 10:33:44 +11:00
setup.c powerpc/powernv: Fix kexec races going back to OPAL 2014-04-28 13:08:50 +10:00
smp.c ppc/powernv: Set the runlatch bits correctly for offline cpus 2014-04-28 16:32:40 +10:00