Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 44219
b: refs/heads/master
c: d0e7034
h: refs/heads/master
i:
  44217: 7eaf96f
  44215: 4238433
v: v3
  • Loading branch information
Linas Vepstas authored and Paul Mackerras committed Dec 8, 2006
1 parent 67ed3d2 commit 27ec73e
Show file tree
Hide file tree
Showing 3 changed files with 12 additions and 4 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 3a1d1ac279fac16ab1b41b2868478f3085f9223c
refs/heads/master: d0e70341c05f6c31375530e0ae29b319153004a7
1 change: 1 addition & 0 deletions trunk/arch/powerpc/platforms/pseries/eeh.c
Original file line number Diff line number Diff line change
Expand Up @@ -337,6 +337,7 @@ int eeh_dn_check_failure(struct device_node *dn, struct pci_dev *dev)
printk (KERN_ERR "EEH: Device driver ignored %d bad reads, panicing\n",
pdn->eeh_check_count);
dump_stack();
msleep(5000);

/* re-read the slot reset state */
if (read_slot_reset_state(pdn, rets) != 0)
Expand Down
13 changes: 10 additions & 3 deletions trunk/arch/powerpc/platforms/pseries/eeh_driver.c
Original file line number Diff line number Diff line change
Expand Up @@ -170,14 +170,19 @@ static void eeh_report_reset(struct pci_dev *dev, void *userdata)
static void eeh_report_resume(struct pci_dev *dev, void *userdata)
{
struct pci_driver *driver = dev->driver;
struct device_node *dn = pci_device_to_OF_node(dev);

dev->error_state = pci_channel_io_normal;

if (!driver)
return;
if (!driver->err_handler)
return;
if (!driver->err_handler->resume)

if ((PCI_DN(dn)->eeh_mode) & EEH_MODE_IRQ_DISABLED) {
PCI_DN(dn)->eeh_mode &= ~EEH_MODE_IRQ_DISABLED;
enable_irq(dev->irq);
}
if (!driver->err_handler ||
!driver->err_handler->resume)
return;

driver->err_handler->resume(dev);
Expand Down Expand Up @@ -407,6 +412,8 @@ struct pci_dn * handle_eeh_events (struct eeh_event *event)

if (rc)
result = PCI_ERS_RESULT_NEED_RESET;
else
result = PCI_ERS_RESULT_RECOVERED;
}

/* If any device has a hard failure, then shut off everything. */
Expand Down

0 comments on commit 27ec73e

Please sign in to comment.