powerpc/eeh: Add eeh_dev to the cache during boot
authorThadeu Lima de Souza Cascardo <cascardo@linux.vnet.ibm.com>
Thu, 27 Jun 2013 21:00:10 +0000 (18:00 -0300)
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>
Fri, 28 Jun 2013 02:02:07 +0000 (12:02 +1000)
commit1abd601864f42a5d10e6fa0b66582591b4497b94
treef35952e50659cff1462f8352f937909fcea12011
parentb37e161388ac3980d5dfb73050e85874b84253eb
powerpc/eeh: Add eeh_dev to the cache during boot

commit f8f7d63fd96ead101415a1302035137a866f8998 ("powerpc/eeh: Trace eeh
device from I/O cache") broke EEH on pseries for devices that were
present during boot and have not been hotplugged/DLPARed.

eeh_check_failure will get the eeh_dev from the cache, and will get
NULL. eeh_addr_cache_build adds the addresses to the cache, but eeh_dev
for the giving pci_device is not set yet. Just reordering the call to
eeh_addr_cache_insert_dev works fine. The ordering is similar to the one
in eeh_add_device_late.

Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@linux.vnet.ibm.com>
Acked-by: Gavin Shan <shangw@linux.vnet.ibm.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
arch/powerpc/platforms/pseries/eeh_cache.c