mirror of
https://github.com/torvalds/linux.git
synced 2024-11-18 01:51:53 +00:00
[POWERPC] EEH: log error only after driver notification.
It turns out many/most versions of firmware enable MMIO when the slto-error-detail rtas call is made (in violation of the architecture). Thus, it would be best to call slot-error-detail only after notifying device drivers of a freeze, as otherwise, a variety of strange and unexpected things may happen. Signed-off-by: Linas Vepstas <linas@austin.ibm.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
This commit is contained in:
parent
b7a6912969
commit
ede8ca269f
@ -361,7 +361,6 @@ struct pci_dn * handle_eeh_events (struct eeh_event *event)
|
||||
goto hard_fail;
|
||||
}
|
||||
|
||||
eeh_slot_error_detail(frozen_pdn, 1 /* Temporary Error */);
|
||||
printk(KERN_WARNING
|
||||
"EEH: This PCI device has failed %d times since last reboot: "
|
||||
"location=%s driver=%s pci addr=%s\n",
|
||||
@ -375,6 +374,11 @@ struct pci_dn * handle_eeh_events (struct eeh_event *event)
|
||||
*/
|
||||
pci_walk_bus(frozen_bus, eeh_report_error, &result);
|
||||
|
||||
/* Since rtas may enable MMIO when posting the error log,
|
||||
* don't post the error log until after all dev drivers
|
||||
* have been informed. */
|
||||
eeh_slot_error_detail(frozen_pdn, 1 /* Temporary Error */);
|
||||
|
||||
/* If all device drivers were EEH-unaware, then shut
|
||||
* down all of the device drivers, and hope they
|
||||
* go down willingly, without panicing the system.
|
||||
|
Loading…
Reference in New Issue
Block a user