summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJenny Derzhavetz <jennyf@mellanox.com>2016-02-24 19:23:58 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2016-04-12 09:09:02 -0700
commita91eb042e1bacdc61a2ca5cb184aa99c24ed5cdb (patch)
tree51b86eb78ef76cec5af66e44d5056d3b0b5f1ee1
parent9b3e8070857db21b9d3973387cd9aae5944d71ad (diff)
iser-target: Fix identification of login rx descriptor type
commit b89a7c25462b164db280abc3b05d4d9d888d40e9 upstream. Once connection request is accepted, one rx descriptor is posted to receive login request. This descriptor has rx type, but is outside the main pool of rx descriptors, and thus was mistreated as tx type. Signed-off-by: Jenny Derzhavetz <jennyf@mellanox.com> Signed-off-by: Sagi Grimberg <sagig@mellanox.com> Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/infiniband/ulp/isert/ib_isert.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/infiniband/ulp/isert/ib_isert.c b/drivers/infiniband/ulp/isert/ib_isert.c
index 8a51c3b5d657..addb57265cb2 100644
--- a/drivers/infiniband/ulp/isert/ib_isert.c
+++ b/drivers/infiniband/ulp/isert/ib_isert.c
@@ -2035,7 +2035,8 @@ is_isert_tx_desc(struct isert_conn *isert_conn, void *wr_id)
void *start = isert_conn->rx_descs;
int len = ISERT_QP_MAX_RECV_DTOS * sizeof(*isert_conn->rx_descs);
- if (wr_id >= start && wr_id < start + len)
+ if ((wr_id >= start && wr_id < start + len) ||
+ (wr_id == isert_conn->login_req_buf))
return false;
return true;