linux/arch/powerpc
Gavin Shan 6e315b2b10 powerpc/eeh: Enable IO path on permanent error
[ Upstream commit 387bbc974f ]

We give up recovery on permanent error, simply shutdown the affected
devices and remove them. If the devices can't be put into quiet state,
they spew more traffic that is likely to cause another unexpected EEH
error. This was observed on "p8dtu2u" machine:

   0002:00:00.0 PCI bridge: IBM Device 03dc
   0002:01:00.0 Ethernet controller: Intel Corporation \
                Ethernet Controller X710/X557-AT 10GBASE-T (rev 02)
   0002:01:00.1 Ethernet controller: Intel Corporation \
                Ethernet Controller X710/X557-AT 10GBASE-T (rev 02)
   0002:01:00.2 Ethernet controller: Intel Corporation \
                Ethernet Controller X710/X557-AT 10GBASE-T (rev 02)
   0002:01:00.3 Ethernet controller: Intel Corporation \
                Ethernet Controller X710/X557-AT 10GBASE-T (rev 02)

On P8 PowerNV platform, the IO path is frozen when shutdowning the
devices, meaning the memory registers are inaccessible. It is why
the devices can't be put into quiet state before removing them.
This fixes the issue by enabling IO path prior to putting the devices
into quiet state.

Reported-by: Pridhiviraj Paidipeddi <ppaidipe@linux.vnet.ibm.com>
Signed-off-by: Gavin Shan <gwshan@linux.vnet.ibm.com>
Acked-by: Russell Currey <ruscur@russell.cc>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
History 2017-07-05 14:40:21 +02:00
..
boot powerpc/boot: Fix zImage TOC alignment 2017-03-26 13:05:57 +02:00
configs Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/scottwood/linux into next 2016-10-11 20:07:56 +11:00
crypto powerpc/crypto/crc32c-vpmsum: Fix missing preempt_disable() 2017-04-12 12:41:13 +02:00
include powerpc/numa: Fix percpu allocations to be NUMA aware 2017-06-14 15:06:03 +02:00
kernel powerpc/eeh: Enable IO path on permanent error 2017-07-05 14:40:21 +02:00
kvm KVM: PPC: Book3S HV: Context-switch EBB registers properly 2017-06-29 13:00:28 +02:00
lib powerpc: Emulation support for load/store instructions on LE 2017-03-18 19:14:30 +08:00
math-emu powerpc: Correct emulated mtfsf instruction 2014-04-07 10:33:11 +10:00
mm mm: larger stack guard gap, between vmas 2017-06-24 07:11:18 +02:00
net powerpc/bpf: Add support for bpf constant blinding 2016-10-04 20:33:20 +11:00
oprofile powerpc/sparse: Make a bunch of things static 2016-09-13 17:35:47 +10:00
perf powerpc/perf: Fix oops when kthread execs user process 2017-06-29 13:00:28 +02:00
platforms powerpc/hotplug-mem: Fix missing endian conversion of aa_index 2017-06-14 15:06:03 +02:00
scripts powerpc/ftrace: Add Kconfig & Make glue for mprofile-kernel 2016-03-07 14:53:56 +11:00
sysdev powerpc/powernv: Properly set "host-ipi" on IPIs 2017-06-17 06:41:50 +02:00
xmon powerpc/xmon: Don't use ld on 32-bit 2016-09-13 17:37:02 +10:00
Kconfig powerpc/ftrace: Fix confusing help text for DISABLE_MPROFILE_KERNEL 2017-05-14 14:00:14 +02:00
Kconfig.debug powerpc/mm: Catch usage of cpu/mmu_has_feature() before jump label init 2016-08-01 11:15:06 +10:00
Makefile arch/powerpc: Add CONFIG_FSL_DPAA to corenetXX_smp_defconfig 2016-09-25 02:39:01 -05:00
relocs_check.sh powerpc/64: whitelist unresolved modversions CRCs 2016-09-22 14:46:31 +02:00