Commit ffbc6476 authored by Quinn Tran's avatar Quinn Tran Committed by Martin K. Petersen
Browse files

scsi: qla2xxx: Cleanup fcport memory to prevent leak



Clean up fcport list and loopid in one place and iterate through for loop.

Signed-off-by: default avatarQuinn Tran <qtran@marvell.com>
Signed-off-by: default avatarHimanshu Madhani <hmadhani@marvell.com>
Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
parent a6b95d1c
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -4821,6 +4821,8 @@ qla2x00_free_fcport(fc_port_t *fcport)

		fcport->ct_desc.ct_sns = NULL;
	}
	list_del(&fcport->list);
	qla2x00_clear_loop_id(fcport);
	kfree(fcport);
}

+2 −5
Original line number Diff line number Diff line
@@ -3907,11 +3907,8 @@ void qla2x00_free_fcports(struct scsi_qla_host *vha)
{
	fc_port_t *fcport, *tfcport;

	list_for_each_entry_safe(fcport, tfcport, &vha->vp_fcports, list) {
		list_del(&fcport->list);
		qla2x00_clear_loop_id(fcport);
		kfree(fcport);
	}
	list_for_each_entry_safe(fcport, tfcport, &vha->vp_fcports, list)
		qla2x00_free_fcport(fcport);
}

static inline void