diff --git a/qla2x00t/qla_os.c b/qla2x00t/qla_os.c index fdcf9699f..9e9f48eb1 100644 --- a/qla2x00t/qla_os.c +++ b/qla2x00t/qla_os.c @@ -671,8 +671,14 @@ qla2x00_abort_fcport_cmds(fc_port_t *fcport) int cnt; unsigned long flags; srb_t *sp; - scsi_qla_host_t *ha = fcport->ha; - scsi_qla_host_t *pha = to_qla_parent(ha); + scsi_qla_host_t *ha; + scsi_qla_host_t *pha; + + if (fcport == NULL) + goto out; + + ha = fcport->ha; + pha = to_qla_parent(ha); spin_lock_irqsave(&pha->hardware_lock, flags); for (cnt = 1; cnt < MAX_OUTSTANDING_COMMANDS; cnt++) { @@ -697,6 +703,9 @@ qla2x00_abort_fcport_cmds(fc_port_t *fcport) spin_lock_irqsave(&pha->hardware_lock, flags); } spin_unlock_irqrestore(&pha->hardware_lock, flags); + +out: + return; } static void