scsi: qla2xxx: allow session delete to finish before create.
authorQuinn Tran <quinn.tran@cavium.com>
Fri, 25 Jan 2019 07:23:45 +0000 (23:23 -0800)
committerMartin K. Petersen <martin.petersen@oracle.com>
Wed, 6 Feb 2019 02:41:16 +0000 (21:41 -0500)
This patch flushes del_work and free_work while sending NACK response for
PRLI

Signed-off-by: Quinn Tran <quinn.tran@cavium.com>
Signed-off-by: Himanshu Madhani <hmadhani@marvell.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/qla2xxx/qla_target.c

index 7f5b1156ea8c6919735a62cb45334535d7a8f26b..6b8c655d9eb4da4227cf14e5d61f91f3774c93bb 100644 (file)
@@ -684,6 +684,9 @@ void qla24xx_do_nack_work(struct scsi_qla_host *vha, struct qla_work_evt *e)
 
        switch (e->u.nack.type) {
        case SRB_NACK_PRLI:
+               t = e->u.nack.fcport;
+               flush_work(&t->del_work);
+               flush_work(&t->free_work);
                mutex_lock(&vha->vha_tgt.tgt_mutex);
                t = qlt_create_sess(vha, e->u.nack.fcport, 0);
                mutex_unlock(&vha->vha_tgt.tgt_mutex);