Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 88523
b: refs/heads/master
c: 555b203
h: refs/heads/master
i:
  88521: 29bf348
  88519: d81fffa
v: v3
  • Loading branch information
Dave Olson authored and Roland Dreier committed Apr 17, 2008
1 parent 2a6ad0a commit 9533dd2
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 2 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: 9355fb6a064723c71e80e9c78de3140b43bfb52d
refs/heads/master: 555b203e48faeacc0373eda7bc87db874db37136
16 changes: 15 additions & 1 deletion trunk/drivers/infiniband/hw/ipath/ipath_intr.c
Original file line number Diff line number Diff line change
Expand Up @@ -299,6 +299,18 @@ static void handle_e_ibstatuschanged(struct ipath_devdata *dd,
lastlstate = ipath_ib_linkstate(dd, dd->ipath_lastibcstat);
ltstate = ipath_ib_linktrstate(dd, ibcs); /* linktrainingtate */

/*
* Since going into a recovery state causes the link state to go
* down and since recovery is transitory, it is better if we "miss"
* ever seeing the link training state go into recovery (i.e.,
* ignore this transition for link state special handling purposes)
* without even updating ipath_lastibcstat.
*/
if ((ltstate == INFINIPATH_IBCS_LT_STATE_RECOVERRETRAIN) ||
(ltstate == INFINIPATH_IBCS_LT_STATE_RECOVERWAITRMT) ||
(ltstate == INFINIPATH_IBCS_LT_STATE_RECOVERIDLE))
goto done;

/*
* if linkstate transitions into INIT from any of the various down
* states, or if it transitions from any of the up (INIT or better)
Expand All @@ -316,7 +328,7 @@ static void handle_e_ibstatuschanged(struct ipath_devdata *dd,
}
} else if ((lastlstate >= INFINIPATH_IBCS_L_STATE_INIT ||
(dd->ipath_flags & IPATH_IB_FORCE_NOTIFY)) &&
ltstate <= INFINIPATH_IBCS_LT_STATE_CFGDEBOUNCE &&
ltstate <= INFINIPATH_IBCS_LT_STATE_CFGWAITRMT &&
ltstate != INFINIPATH_IBCS_LT_STATE_LINKUP) {
int handled;
handled = dd->ipath_f_ib_updown(dd, 0, ibcs);
Expand Down Expand Up @@ -460,6 +472,8 @@ static void handle_e_ibstatuschanged(struct ipath_devdata *dd,

skip_ibchange:
dd->ipath_lastibcstat = ibcs;
done:
return;
}

static void handle_supp_msgs(struct ipath_devdata *dd,
Expand Down

0 comments on commit 9533dd2

Please sign in to comment.