summaryrefslogtreecommitdiff
path: root/drivers/infiniband/hw/ipath/ipath_intr.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/infiniband/hw/ipath/ipath_intr.c')
-rw-r--r--drivers/infiniband/hw/ipath/ipath_intr.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/infiniband/hw/ipath/ipath_intr.c b/drivers/infiniband/hw/ipath/ipath_intr.c
index 1b58f4737c71..45c4c068ab1e 100644
--- a/drivers/infiniband/hw/ipath/ipath_intr.c
+++ b/drivers/infiniband/hw/ipath/ipath_intr.c
@@ -933,11 +933,15 @@ void ipath_clear_freeze(struct ipath_devdata *dd)
* therefore would not be sent, and eventually
* might cause the process to run out of bufs
*/
- ipath_cancel_sends(dd, 0);
+ ipath_cancel_sends(dd, 1);
ipath_write_kreg(dd, dd->ipath_kregs->kr_control,
dd->ipath_control);
- /* ensure pio avail updates continue */
+ /*
+ * ensure pio avail updates continue (because the update
+ * won't have happened from cancel_sends because we were
+ * still in freeze
+ */
ipath_force_pio_avail_update(dd);
/*