Subject: eeh bug

From: Benjamin Herrenschmidt <[email-masked]>
Date: Thu, 17 May 2007 14:46:24 +1000

Hi Linas !

While debugging some other issues, I had a couple of oopses caused by
what looks like a bug in EEH:

When an RTAS PCI config space call returns all f's, we do an eeh error
check by calling eeh_dn_check_failure(pdn->node, NULL);

The problem is that second argument... NULL for the pci_dev *. It looks
like the EEH code will try to printk pci_name of that and later on
dereference it within eehd, thus causing an oops.

I'm not sure what's the best way to fix it and have no time to dig right
now though I suppose one could walk all PCI devices in the system to
look for a match with the dev node.

Though if for some reason we don't find a match, I think we should still
handle NULL's gracefully.

Cheers,
Ben.