On 3/4/2014 2:00 AM, Nicholas A. Bellinger wrote:
From: Nicholas Bellinger <n...@linux-iscsi.org>

Hi Or & Sagi,

This series addresses a number of active I/O shutdown related issues
in iser-target code that have come up recently during stress testing.

Note there is still a seperate iser-target network portal shutdown
bug being tracked down, but this series addresses all existing issues
related to active I/O session shutdown.

The patch breakdown looks like:

Patch #1 fixes a long-standing bug where TPGs in shutdown incorrectly
could be referenced by new login attempts.

Patch #2 converts list_del -> list_del_init for iscsi_cmd->i_conn_node
so that list_empty works correctly.

Patch #3 addresses isert_conn->state related bugs resulting in hung
shutdown, and splits isert_free_conn() into seperate code that is
called earlier during shutdown to ensure that all outstanding I/O
has completed.

Patch #4 fixes incorrect accounting of ->post_send_buf_count during
active I/O shutdown with outstanding RDMA WRITE + RDMA READ work
requests.

Patch #5 addresses a bug related to active I/O shutdown with
outstanding FRMR work requests.  Note this patch is specific to
v3.12+ code.

Patch #6 addresses bugs related to active I/O shutdown with
outstanding completion interrupt coalescing batches. Note this patch
is specific to v3.13+ code.

Please review.

Hey Nic,

So besides a minor comment, you have my Ack on this set.

More on cleanup flow. isert_cma_handler does not handle RDMA_CM_EVENT_TIMEWAIT_EXIT. To be more specific, according to IB spec, when initiating disconnect (rdma_disconnect/ib_send_cm_dreq), one should not destroy a used qp until getting TIMEWAIT_EXIT CM event. We are working on this in iSER initiator. It might lead to "stale connection" CM rejects on future connections (SRP also does not do that).

Sagi.

--nab

Nicholas Bellinger (6):
   iscsi-target: Fix iscsit_get_tpg_from_np tpg_state bug
   iscsi/iser-target: Use list_del_init for ->i_conn_node
   iscsi/iser-target: Fix isert_conn->state hung shutdown issues
   iser-target: Fix post_send_buf_count for RDMA READ/WRITE
   iser-target: Ignore completions for FRWRs in isert_cq_tx_work
   iser-target: Fix command leak for tx_desc->comp_llnode_batch

  drivers/infiniband/ulp/isert/ib_isert.c  |  180 ++++++++++++++++++------------
  drivers/infiniband/ulp/isert/ib_isert.h  |    7 +-
  drivers/target/iscsi/iscsi_target.c      |   10 +-
  drivers/target/iscsi/iscsi_target_erl2.c |   16 +--
  drivers/target/iscsi/iscsi_target_tpg.c  |    2 +-
  include/target/iscsi/iscsi_transport.h   |    1 +
  6 files changed, 129 insertions(+), 87 deletions(-)


--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to