iser-target: Fix post_send_buf_count for RDMA READ/WRITE
authorNicholas Bellinger <nab@linux-iscsi.org>
Thu, 27 Feb 2014 17:05:03 +0000 (09:05 -0800)
committerNicholas Bellinger <nab@linux-iscsi.org>
Wed, 5 Mar 2014 01:54:09 +0000 (17:54 -0800)
commitb6b87a1df604678ed1be40158080db012a99ccca
tree5f8b4ad0c24e576730b0a4f1f248ca3d77281416
parentdefd884845297fd5690594bfe89656b01f16d87e
iser-target: Fix post_send_buf_count for RDMA READ/WRITE

This patch fixes the incorrect setting of ->post_send_buf_count
related to RDMA WRITEs + READs where isert_rdma_rw->send_wr_num
was not being taken into account.

This includes incrementing ->post_send_buf_count within
isert_put_datain() + isert_get_dataout(), decrementing within
__isert_send_completion() + isert_response_completion(), and
clearing wr->send_wr_num within isert_completion_rdma_read()

This is necessary because even though IB_SEND_SIGNALED is
not set for RDMA WRITEs + READs, during a QP failure event
the work requests will be returned with exception status
from the TX completion queue.

Acked-by: Sagi Grimberg <sagig@mellanox.com>
Cc: Or Gerlitz <ogerlitz@mellanox.com>
Cc: <stable@vger.kernel.org> #3.10+
Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
drivers/infiniband/ulp/isert/ib_isert.c