mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-31 12:10:52 -04:00
net/rds: Set fr_state only to FRMR_IS_FREE if IB_WR_LOCAL_INV had been successful
Fix a bug where fr_state first goes to FRMR_IS_STALE, because of a failure of operation IB_WR_LOCAL_INV, but then gets set back to "FRMR_IS_FREE" uncoditionally, even though the operation failed. Signed-off-by: Gerd Rausch <[email protected]> Acked-by: Santosh Shilimkar <[email protected]> Signed-off-by: David S. Miller <[email protected]>
This commit is contained in:
parent
aea01a2234
commit
9547dff108
1 changed files with 2 additions and 1 deletions
|
|
@ -309,7 +309,8 @@ void rds_ib_mr_cqe_handler(struct rds_ib_connection *ic, struct ib_wc *wc)
|
|||
}
|
||||
|
||||
if (frmr->fr_inv) {
|
||||
frmr->fr_state = FRMR_IS_FREE;
|
||||
if (frmr->fr_state == FRMR_IS_INUSE)
|
||||
frmr->fr_state = FRMR_IS_FREE;
|
||||
frmr->fr_inv = false;
|
||||
wake_up(&frmr->fr_inv_done);
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue