Skip to content

Commit 42a70ab

Browse files
Dupuis, Chadmartinkpetersen
authored andcommitted
scsi: qedi: Fix memory leak in tmf response processing.
Signed-off-by: Manish Rangankar <[email protected]> Signed-off-by: Chad Dupuis <[email protected]> Signed-off-by: Martin K. Petersen <[email protected]>
1 parent fbdab3e commit 42a70ab

File tree

1 file changed

+3
-2
lines changed

1 file changed

+3
-2
lines changed

drivers/scsi/qedi/qedi_fw.c

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -165,10 +165,9 @@ static void qedi_tmf_resp_work(struct work_struct *work)
165165
iscsi_block_session(session->cls_session);
166166
rval = qedi_cleanup_all_io(qedi, qedi_conn, qedi_cmd->task, true);
167167
if (rval) {
168-
clear_bit(QEDI_CONN_FW_CLEANUP, &qedi_conn->flags);
169168
qedi_clear_task_idx(qedi, qedi_cmd->task_id);
170169
iscsi_unblock_session(session->cls_session);
171-
return;
170+
goto exit_tmf_resp;
172171
}
173172

174173
iscsi_unblock_session(session->cls_session);
@@ -177,6 +176,8 @@ static void qedi_tmf_resp_work(struct work_struct *work)
177176
spin_lock(&session->back_lock);
178177
__iscsi_complete_pdu(conn, (struct iscsi_hdr *)resp_hdr_ptr, NULL, 0);
179178
spin_unlock(&session->back_lock);
179+
180+
exit_tmf_resp:
180181
kfree(resp_hdr_ptr);
181182
clear_bit(QEDI_CONN_FW_CLEANUP, &qedi_conn->flags);
182183
}

0 commit comments

Comments
 (0)