aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/infiniband
diff options
context:
space:
mode:
authorNicholas Bellinger <nab@linux-iscsi.org>2014-10-05 05:13:03 -0400
committerNicholas Bellinger <nab@linux-iscsi.org>2014-10-05 05:27:05 -0400
commit0d0f660d882c1c02748ced13966a2413aa5d6cc2 (patch)
treeebab1ecb2e70c4f4ebcd56e1b974ece8c2876c11 /drivers/infiniband
parent92404e609a2dffc55a9a22540ed48b6f0edc9c59 (diff)
iser-target: Disable TX completion interrupt coalescing
This patch explicitly disables TX completion interrupt coalescing logic in isert_put_response() and isert_put_datain() that was originally added as an efficiency optimization in commit 95b60f07. It has been reported that this change can trigger ABORT_TASK timeouts under certain small block workloads, where disabling coalescing was required for stability. According to Sagi, this doesn't impact overall performance, so go ahead and disable it for now. Reported-by: Moussa Ba <moussaba@micron.com> Reported-by: Sagi Grimberg <sagig@dev.mellanox.co.il> Cc: <stable@vger.kernel.org> # 3.13+ Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
Diffstat (limited to 'drivers/infiniband')
-rw-r--r--drivers/infiniband/ulp/isert/ib_isert.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/infiniband/ulp/isert/ib_isert.c b/drivers/infiniband/ulp/isert/ib_isert.c
index 40969b683fdd..f7191128b725 100644
--- a/drivers/infiniband/ulp/isert/ib_isert.c
+++ b/drivers/infiniband/ulp/isert/ib_isert.c
@@ -2183,7 +2183,7 @@ isert_put_response(struct iscsi_conn *conn, struct iscsi_cmd *cmd)
2183 isert_cmd->tx_desc.num_sge = 2; 2183 isert_cmd->tx_desc.num_sge = 2;
2184 } 2184 }
2185 2185
2186 isert_init_send_wr(isert_conn, isert_cmd, send_wr, true); 2186 isert_init_send_wr(isert_conn, isert_cmd, send_wr, false);
2187 2187
2188 pr_debug("Posting SCSI Response IB_WR_SEND >>>>>>>>>>>>>>>>>>>>>>\n"); 2188 pr_debug("Posting SCSI Response IB_WR_SEND >>>>>>>>>>>>>>>>>>>>>>\n");
2189 2189
@@ -2882,7 +2882,7 @@ isert_put_datain(struct iscsi_conn *conn, struct iscsi_cmd *cmd)
2882 &isert_cmd->tx_desc.iscsi_header); 2882 &isert_cmd->tx_desc.iscsi_header);
2883 isert_init_tx_hdrs(isert_conn, &isert_cmd->tx_desc); 2883 isert_init_tx_hdrs(isert_conn, &isert_cmd->tx_desc);
2884 isert_init_send_wr(isert_conn, isert_cmd, 2884 isert_init_send_wr(isert_conn, isert_cmd,
2885 &isert_cmd->tx_desc.send_wr, true); 2885 &isert_cmd->tx_desc.send_wr, false);
2886 isert_cmd->rdma_wr.s_send_wr.next = &isert_cmd->tx_desc.send_wr; 2886 isert_cmd->rdma_wr.s_send_wr.next = &isert_cmd->tx_desc.send_wr;
2887 wr->send_wr_num += 1; 2887 wr->send_wr_num += 1;
2888 } 2888 }