Re: [PATCH 01/10] scsi: iscsi: Move iscsi_ep_disconnect

Chris Leech
2022-04-09T01:36:13Z

On Thu, Apr 07, 2022 at 07:13:05PM -0500, Mike Christie wrote:
> This patch moves iscsi_ep_disconnect so it can be called earlier in the
> next patch.

Reviewed-by: Chris Leech <cleech@redhat.com>

> Reviewed-by: Lee Duncan <lduncan@suse.com>
> Signed-off-by: Mike Christie <michael.christie@oracle.com>
> ---
> drivers/scsi/scsi_transport_iscsi.c | 38 ++++++++++++++---------------
> 1 file changed, 19 insertions(+), 19 deletions(-)
>
> diff --git a/drivers/scsi/scsi_transport_iscsi.c b/drivers/scsi/scsi_transport_iscsi.c
> index 27951ea05dd4..4e10457e3ab9 100644
> --- a/drivers/scsi/scsi_transport_iscsi.c
> +++ b/drivers/scsi/scsi_transport_iscsi.c
> @@ -2217,6 +2217,25 @@ static void iscsi_stop_conn(struct iscsi_cls_conn *conn, int flag)
> ISCSI_DBG_TRANS_CONN(conn, "Stopping conn done.\n");
> }
>
> +static void iscsi_ep_disconnect(struct iscsi_cls_conn *conn, bool is_active)
> +{
> + struct iscsi_cls_session *session = iscsi_conn_to_session(conn);
> + struct iscsi_endpoint *ep;
> +
> + ISCSI_DBG_TRANS_CONN(conn, "disconnect ep.\n");
> + conn->state = ISCSI_CONN_FAILED;
> +
> + if (!conn->ep || !session->transport->ep_disconnect)
> + return;
> +
> + ep = conn->ep;
> + conn->ep = NULL;
> +
> + session->transport->unbind_conn(conn, is_active);
> + session->transport->ep_disconnect(ep);
> + ISCSI_DBG_TRANS_CONN(conn, "disconnect ep done.\n");
> +}
> +
> static int iscsi_if_stop_conn(struct iscsi_transport *transport,
> struct iscsi_uevent *ev)
> {
> @@ -2257,25 +2276,6 @@ static int iscsi_if_stop_conn(struct iscsi_transport *transport,
> return 0;
> }
>
> -static void iscsi_ep_disconnect(struct iscsi_cls_conn *conn, bool is_active)
> -{
> - struct iscsi_cls_session *session = iscsi_conn_to_session(conn);
> - struct iscsi_endpoint *ep;
> -
> - ISCSI_DBG_TRANS_CONN(conn, "disconnect ep.\n");
> - conn->state = ISCSI_CONN_FAILED;
> -
> - if (!conn->ep || !session->transport->ep_disconnect)
> - return;
> -
> - ep = conn->ep;
> - conn->ep = NULL;
> -
> - session->transport->unbind_conn(conn, is_active);
> - session->transport->ep_disconnect(ep);
> - ISCSI_DBG_TRANS_CONN(conn, "disconnect ep done.\n");
> -}
> -
> static void iscsi_cleanup_conn_work_fn(struct work_struct *work)
> {
> struct iscsi_cls_conn *conn = container_of(work, struct iscsi_cls_conn,
> --
> 2.25.1
>