diff options
author | Gavin Shan <gwshan@linux.vnet.ibm.com> | 2014-10-01 17:07:54 +1000 |
---|---|---|
committer | Michael Ellerman <mpe@ellerman.id.au> | 2014-10-15 11:27:21 +1100 |
commit | c59004cc83c3f8b182c32ca9d366d222a59ab63f (patch) | |
tree | f376cfefd5d1eb0324ebdc4f95b62b2c8846a68f /arch/powerpc | |
parent | b6541db1395298b326ae1bf59fae6fbb2c6e8f77 (diff) | |
download | op-kernel-dev-c59004cc83c3f8b182c32ca9d366d222a59ab63f.zip op-kernel-dev-c59004cc83c3f8b182c32ca9d366d222a59ab63f.tar.gz |
powerpc/eeh: Don't collect logs on PE with blocked config space
When the PE's config space is marked as blocked, PCI config read
requests always return 0xFF's. It's pointless to collect logs in
this case.
Signed-off-by: Gavin Shan <gwshan@linux.vnet.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Diffstat (limited to 'arch/powerpc')
-rw-r--r-- | arch/powerpc/kernel/eeh.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/arch/powerpc/kernel/eeh.c b/arch/powerpc/kernel/eeh.c index 4d83f50..2248a19 100644 --- a/arch/powerpc/kernel/eeh.c +++ b/arch/powerpc/kernel/eeh.c @@ -257,6 +257,13 @@ static void *eeh_dump_pe_log(void *data, void *flag) struct eeh_dev *edev, *tmp; size_t *plen = flag; + /* If the PE's config space is blocked, 0xFF's will be + * returned. It's pointless to collect the log in this + * case. + */ + if (pe->state & EEH_PE_CFG_BLOCKED) + return NULL; + eeh_pe_for_each_dev(pe, edev, tmp) *plen += eeh_dump_dev_log(edev, pci_regs_buf + *plen, EEH_PCI_REGS_LOG_LEN - *plen); |