diff options
Diffstat (limited to 'drivers/infiniband/hw/ipath/ipath_iba6110.c')
-rw-r--r-- | drivers/infiniband/hw/ipath/ipath_iba6110.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/drivers/infiniband/hw/ipath/ipath_iba6110.c b/drivers/infiniband/hw/ipath/ipath_iba6110.c index d8ac9f18bf49..34d159ad97b4 100644 --- a/drivers/infiniband/hw/ipath/ipath_iba6110.c +++ b/drivers/infiniband/hw/ipath/ipath_iba6110.c | |||
@@ -509,6 +509,13 @@ static void ipath_ht_handle_hwerrors(struct ipath_devdata *dd, char *msg, | |||
509 | if (!hwerrs) { | 509 | if (!hwerrs) { |
510 | ipath_dbg("Clearing freezemode on ignored or " | 510 | ipath_dbg("Clearing freezemode on ignored or " |
511 | "recovered hardware error\n"); | 511 | "recovered hardware error\n"); |
512 | /* | ||
513 | * clear all sends, becauase they have may been | ||
514 | * completed by usercode while in freeze mode, and | ||
515 | * therefore would not be sent, and eventually | ||
516 | * might cause the process to run out of bufs | ||
517 | */ | ||
518 | ipath_cancel_sends(dd); | ||
512 | ctrl &= ~INFINIPATH_C_FREEZEMODE; | 519 | ctrl &= ~INFINIPATH_C_FREEZEMODE; |
513 | ipath_write_kreg(dd, dd->ipath_kregs->kr_control, | 520 | ipath_write_kreg(dd, dd->ipath_kregs->kr_control, |
514 | ctrl); | 521 | ctrl); |
@@ -1566,11 +1573,6 @@ static int ipath_ht_early_init(struct ipath_devdata *dd) | |||
1566 | writel(16, piobuf); | 1573 | writel(16, piobuf); |
1567 | piobuf += pioincr; | 1574 | piobuf += pioincr; |
1568 | } | 1575 | } |
1569 | /* | ||
1570 | * self-clearing | ||
1571 | */ | ||
1572 | ipath_write_kreg(dd, dd->ipath_kregs->kr_sendctrl, | ||
1573 | INFINIPATH_S_ABORT); | ||
1574 | 1576 | ||
1575 | ipath_get_eeprom_info(dd); | 1577 | ipath_get_eeprom_info(dd); |
1576 | if (dd->ipath_boardrev == 5 && dd->ipath_serial[0] == '1' && | 1578 | if (dd->ipath_boardrev == 5 && dd->ipath_serial[0] == '1' && |
@@ -1599,7 +1601,6 @@ static int ipath_ht_txe_recover(struct ipath_devdata *dd) | |||
1599 | } | 1601 | } |
1600 | dev_info(&dd->pcidev->dev, | 1602 | dev_info(&dd->pcidev->dev, |
1601 | "Recovering from TXE PIO parity error\n"); | 1603 | "Recovering from TXE PIO parity error\n"); |
1602 | ipath_disarm_senderrbufs(dd, 1); | ||
1603 | return 1; | 1604 | return 1; |
1604 | } | 1605 | } |
1605 | 1606 | ||