Skip to content

Commit 27e9862

Browse files
mikechristiemartinkpetersen
authored andcommitted
scsi: iscsi: Drop suspend calls from ep_disconnect
libiscsi will now suspend the send/tx queue for the drivers so we can drop it from the drivers ep_disconnect. Link: https://lore.kernel.org/r/[email protected] Reviewed-by: Lee Duncan <[email protected]> Signed-off-by: Mike Christie <[email protected]> Signed-off-by: Martin K. Petersen <[email protected]>
1 parent 891e263 commit 27e9862

File tree

4 files changed

+5
-16
lines changed

4 files changed

+5
-16
lines changed

drivers/scsi/be2iscsi/be_iscsi.c

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1293,7 +1293,6 @@ static int beiscsi_conn_close(struct beiscsi_endpoint *beiscsi_ep)
12931293
void beiscsi_ep_disconnect(struct iscsi_endpoint *ep)
12941294
{
12951295
struct beiscsi_endpoint *beiscsi_ep;
1296-
struct beiscsi_conn *beiscsi_conn;
12971296
struct beiscsi_hba *phba;
12981297
uint16_t cri_index;
12991298

@@ -1312,11 +1311,6 @@ void beiscsi_ep_disconnect(struct iscsi_endpoint *ep)
13121311
return;
13131312
}
13141313

1315-
if (beiscsi_ep->conn) {
1316-
beiscsi_conn = beiscsi_ep->conn;
1317-
iscsi_suspend_queue(beiscsi_conn->conn);
1318-
}
1319-
13201314
if (!beiscsi_hba_is_online(phba)) {
13211315
beiscsi_log(phba, KERN_INFO, BEISCSI_LOG_CONFIG,
13221316
"BS_%d : HBA in error 0x%lx\n", phba->state);

drivers/scsi/bnx2i/bnx2i_iscsi.c

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2113,7 +2113,6 @@ static void bnx2i_ep_disconnect(struct iscsi_endpoint *ep)
21132113
{
21142114
struct bnx2i_endpoint *bnx2i_ep;
21152115
struct bnx2i_conn *bnx2i_conn = NULL;
2116-
struct iscsi_conn *conn = NULL;
21172116
struct bnx2i_hba *hba;
21182117

21192118
bnx2i_ep = ep->dd_data;
@@ -2126,11 +2125,8 @@ static void bnx2i_ep_disconnect(struct iscsi_endpoint *ep)
21262125
!time_after(jiffies, bnx2i_ep->timestamp + (12 * HZ)))
21272126
msleep(250);
21282127

2129-
if (bnx2i_ep->conn) {
2128+
if (bnx2i_ep->conn)
21302129
bnx2i_conn = bnx2i_ep->conn;
2131-
conn = bnx2i_conn->cls_conn->dd_data;
2132-
iscsi_suspend_queue(conn);
2133-
}
21342130
hba = bnx2i_ep->hba;
21352131

21362132
mutex_lock(&hba->net_dev_lock);

drivers/scsi/cxgbi/libcxgbi.c

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2968,7 +2968,6 @@ void cxgbi_ep_disconnect(struct iscsi_endpoint *ep)
29682968
ep, cep, cconn, csk, csk->state, csk->flags);
29692969

29702970
if (cconn && cconn->iconn) {
2971-
iscsi_suspend_tx(cconn->iconn);
29722971
write_lock_bh(&csk->callback_lock);
29732972
cep->csk->user_data = NULL;
29742973
cconn->cep = NULL;

drivers/scsi/qedi/qedi_iscsi.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -988,7 +988,6 @@ static void qedi_ep_disconnect(struct iscsi_endpoint *ep)
988988
{
989989
struct qedi_endpoint *qedi_ep;
990990
struct qedi_conn *qedi_conn = NULL;
991-
struct iscsi_conn *conn = NULL;
992991
struct qedi_ctx *qedi;
993992
int ret = 0;
994993
int wait_delay;
@@ -1007,8 +1006,6 @@ static void qedi_ep_disconnect(struct iscsi_endpoint *ep)
10071006

10081007
if (qedi_ep->conn) {
10091008
qedi_conn = qedi_ep->conn;
1010-
conn = qedi_conn->cls_conn->dd_data;
1011-
iscsi_suspend_queue(conn);
10121009
abrt_conn = qedi_conn->abrt_conn;
10131010

10141011
while (count--) {
@@ -1621,8 +1618,11 @@ void qedi_clear_session_ctx(struct iscsi_cls_session *cls_sess)
16211618
struct iscsi_conn *conn = session->leadconn;
16221619
struct qedi_conn *qedi_conn = conn->dd_data;
16231620

1624-
if (iscsi_is_session_online(cls_sess))
1621+
if (iscsi_is_session_online(cls_sess)) {
1622+
if (conn)
1623+
iscsi_suspend_queue(conn);
16251624
qedi_ep_disconnect(qedi_conn->iscsi_ep);
1625+
}
16261626

16271627
qedi_conn_destroy(qedi_conn->cls_conn);
16281628

0 commit comments

Comments
 (0)