diff options
author | Avinash Repaka <avinash.repaka@oracle.com> | 2016-03-01 23:20:54 (GMT) |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2016-03-02 19:13:19 (GMT) |
commit | 1659185fb4d0025835eb2058a141f0746c5cab00 (patch) | |
tree | b4cf4a644ba1fc2ba50cd478b1fa896bc61b1b2d /net/rds/ib_cm.c | |
parent | ad6832f950d35df8c70b577993a24b31b34d88e4 (diff) | |
download | linux-1659185fb4d0025835eb2058a141f0746c5cab00.tar.xz |
RDS: IB: Support Fastreg MR (FRMR) memory registration mode
Fastreg MR(FRMR) is another method with which one can
register memory to HCA. Some of the newer HCAs supports only fastreg
mr mode, so we need to add support for it to have RDS functional
on them.
Signed-off-by: Santosh Shilimkar <ssantosh@kernel.org>
Signed-off-by: Avinash Repaka <avinash.repaka@oracle.com>
Signed-off-by: Santosh Shilimkar <santosh.shilimkar@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/rds/ib_cm.c')
-rw-r--r-- | net/rds/ib_cm.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/net/rds/ib_cm.c b/net/rds/ib_cm.c index 83f4673..8764970 100644 --- a/net/rds/ib_cm.c +++ b/net/rds/ib_cm.c @@ -249,7 +249,12 @@ static void poll_scq(struct rds_ib_connection *ic, struct ib_cq *cq, (unsigned long long)wc->wr_id, wc->status, wc->byte_len, be32_to_cpu(wc->ex.imm_data)); - rds_ib_send_cqe_handler(ic, wc); + if (wc->wr_id <= ic->i_send_ring.w_nr || + wc->wr_id == RDS_IB_ACK_WR_ID) + rds_ib_send_cqe_handler(ic, wc); + else + rds_ib_mr_cqe_handler(ic, wc); + } } } |