Skip to content

Commit 08e627b

Browse files
committed
Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc
Pull powerpc EEH bugfixes from Benjamin Herrenschmidt. Two one-liner fixes for the new EEH code. * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: powerpc/eeh: Do not invalidate PE properly powerpc/pseries: Fix oops with MSIs when missing EEH PEs
2 parents c2a65d3 + e716e01 commit 08e627b

File tree

2 files changed

+3
-2
lines changed

2 files changed

+3
-2
lines changed

arch/powerpc/platforms/pseries/eeh_pe.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -449,7 +449,7 @@ int eeh_rmv_from_parent_pe(struct eeh_dev *edev, int purge_pe)
449449
if (list_empty(&pe->edevs)) {
450450
cnt = 0;
451451
list_for_each_entry(child, &pe->child_list, child) {
452-
if (!(pe->type & EEH_PE_INVALID)) {
452+
if (!(child->type & EEH_PE_INVALID)) {
453453
cnt++;
454454
break;
455455
}

arch/powerpc/platforms/pseries/msi.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -220,7 +220,8 @@ static struct device_node *find_pe_dn(struct pci_dev *dev, int *total)
220220

221221
/* Get the top level device in the PE */
222222
edev = of_node_to_eeh_dev(dn);
223-
edev = list_first_entry(&edev->pe->edevs, struct eeh_dev, list);
223+
if (edev->pe)
224+
edev = list_first_entry(&edev->pe->edevs, struct eeh_dev, list);
224225
dn = eeh_dev_to_of_node(edev);
225226
if (!dn)
226227
return NULL;

0 commit comments

Comments
 (0)