aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc/kernel
diff options
context:
space:
mode:
authorMike Qiu <qiudayu@linux.vnet.ibm.com>2014-06-26 02:58:47 -0400
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>2014-08-05 01:28:49 -0400
commitdadcd6d6e71311f433a16b71203d983944f14095 (patch)
tree4792fe74da970ec478376c0398f9126fc1e0b69c /arch/powerpc/kernel
parent1b69be5e8afc634f39ad695a6ab6aad0cf0975c7 (diff)
powerpc/eeh: sysfs entries lost
The sysfs entries are lost because of commit 2213fb1 ("powerpc/eeh: Skip eeh sysfs when eeh is disabled"). That commit added condition to create sysfs entries with EEH_ENABLED, which isn't populated when trying to create sysfs entries on PowerNV platform during system boot time. The patch fixes the issue by: * Reoder EEH initialization functions so that they're same on PowerNV/pSeries. * Cache PE's primary bus by PowerNV platform instead of EEH core to avoid kernel crash caused by the function reorder. Another benefit with this is to avoid one eeh_probe_mode_dev() in EEH core. Signed-off-by: Mike Qiu <qiudayu@linux.vnet.ibm.com> Acked-by: Gavin Shan <gwshan@linux.vnet.ibm.com> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Diffstat (limited to 'arch/powerpc/kernel')
-rw-r--r--arch/powerpc/kernel/eeh_pe.c11
1 files changed, 0 insertions, 11 deletions
diff --git a/arch/powerpc/kernel/eeh_pe.c b/arch/powerpc/kernel/eeh_pe.c
index fbd01eba4473..1dce071a9ac3 100644
--- a/arch/powerpc/kernel/eeh_pe.c
+++ b/arch/powerpc/kernel/eeh_pe.c
@@ -351,17 +351,6 @@ int eeh_add_to_parent_pe(struct eeh_dev *edev)
351 pe->config_addr = edev->config_addr; 351 pe->config_addr = edev->config_addr;
352 352
353 /* 353 /*
354 * While doing PE reset, we probably hot-reset the
355 * upstream bridge. However, the PCI devices including
356 * the associated EEH devices might be removed when EEH
357 * core is doing recovery. So that won't safe to retrieve
358 * the bridge through downstream EEH device. We have to
359 * trace the parent PCI bus, then the upstream bridge.
360 */
361 if (eeh_probe_mode_dev())
362 pe->bus = eeh_dev_to_pci_dev(edev)->bus;
363
364 /*
365 * Put the new EEH PE into hierarchy tree. If the parent 354 * Put the new EEH PE into hierarchy tree. If the parent
366 * can't be found, the newly created PE will be attached 355 * can't be found, the newly created PE will be attached
367 * to PHB directly. Otherwise, we have to associate the 356 * to PHB directly. Otherwise, we have to associate the