| From 3be63b1e1838e35ce93e83f19573e949f4b389b4 Mon Sep 17 00:00:00 2001 |
| From: Sawan Chandak <sawan.chandak@cavium.com> |
| Date: Mon, 4 Dec 2017 14:45:04 -0800 |
| Subject: scsi: qla2xxx: Fix NPIV host cleanup in target mode |
| |
| From: Sawan Chandak <sawan.chandak@cavium.com> |
| |
| commit 3be63b1e1838e35ce93e83f19573e949f4b389b4 upstream. |
| |
| Add check to make sure we are cleaning up global target host list only |
| for NPIV hosts |
| |
| Fixes: bdbe24de281e2 ("scsi: qla2xxx: Cleanup NPIV host in target mode during config teardown") |
| Cc: <stable@vger.kernel.org> # 4.10+ |
| Signed-off-by: Sawan Chandak <sawan.chandak@cavium.com> |
| Signed-off-by: Himanshu Madhani <himanshu.madhani@cavium.com> |
| Reviewed-by: Hannes Reinecke <hare@suse.com> |
| Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| drivers/scsi/qla2xxx/qla_target.c | 7 +++++-- |
| 1 file changed, 5 insertions(+), 2 deletions(-) |
| |
| --- a/drivers/scsi/qla2xxx/qla_target.c |
| +++ b/drivers/scsi/qla2xxx/qla_target.c |
| @@ -1561,8 +1561,11 @@ static void qlt_release(struct qla_tgt * |
| |
| btree_destroy64(&tgt->lun_qpair_map); |
| |
| - if (ha->tgt.tgt_ops && ha->tgt.tgt_ops->remove_target) |
| - ha->tgt.tgt_ops->remove_target(vha); |
| + if (vha->vp_idx) |
| + if (ha->tgt.tgt_ops && |
| + ha->tgt.tgt_ops->remove_target && |
| + vha->vha_tgt.target_lport_ptr) |
| + ha->tgt.tgt_ops->remove_target(vha); |
| |
| vha->vha_tgt.qla_tgt = NULL; |
| |