Code Review
/
kvmfornfv.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
Upgrade to 4.4.50-rt62
[kvmfornfv.git]
/
kernel
/
arch
/
powerpc
/
platforms
/
powernv
/
eeh-powernv.c
diff --git
a/kernel/arch/powerpc/platforms/powernv/eeh-powernv.c
b/kernel/arch/powerpc/platforms/powernv/eeh-powernv.c
index
2ba6025
..
9273685
100644
(file)
--- a/
kernel/arch/powerpc/platforms/powernv/eeh-powernv.c
+++ b/
kernel/arch/powerpc/platforms/powernv/eeh-powernv.c
@@
-956,6
+956,11
@@
static int pnv_eeh_reset(struct eeh_pe *pe, int option)
}
bus = eeh_pe_bus_get(pe);
}
bus = eeh_pe_bus_get(pe);
+ if (!bus) {
+ pr_err("%s: Cannot find PCI bus for PHB#%d-PE#%x\n",
+ __func__, pe->phb->global_number, pe->addr);
+ return -EIO;
+ }
if (pci_is_root_bus(bus) ||
pci_is_root_bus(bus->parent))
ret = pnv_eeh_root_reset(hose, option);
if (pci_is_root_bus(bus) ||
pci_is_root_bus(bus->parent))
ret = pnv_eeh_root_reset(hose, option);
@@
-1163,7
+1168,7
@@
static void pnv_eeh_get_and_dump_hub_diag(struct pci_controller *hose)
return;
}
return;
}
- switch (
data->type
) {
+ switch (
be16_to_cpu(data->type)
) {
case OPAL_P7IOC_DIAG_TYPE_RGC:
pr_info("P7IOC diag-data for RGC\n\n");
pnv_eeh_dump_hub_diag_common(data);
case OPAL_P7IOC_DIAG_TYPE_RGC:
pr_info("P7IOC diag-data for RGC\n\n");
pnv_eeh_dump_hub_diag_common(data);
@@
-1395,7
+1400,7
@@
static int pnv_eeh_next_error(struct eeh_pe **pe)
/* Try best to clear it */
opal_pci_eeh_freeze_clear(phb->opal_id,
/* Try best to clear it */
opal_pci_eeh_freeze_clear(phb->opal_id,
-
frozen_pe_no
,
+
be64_to_cpu(frozen_pe_no)
,
OPAL_EEH_ACTION_CLEAR_FREEZE_ALL);
ret = EEH_NEXT_ERR_NONE;
} else if ((*pe)->state & EEH_PE_ISOLATED ||
OPAL_EEH_ACTION_CLEAR_FREEZE_ALL);
ret = EEH_NEXT_ERR_NONE;
} else if ((*pe)->state & EEH_PE_ISOLATED ||