|
@@ -1186,7 +1186,9 @@ static void zfcp_erp_scsi_scan(struct work_struct *work)
|
|
|
container_of(work, struct zfcp_erp_add_work, work);
|
|
|
struct zfcp_unit *unit = p->unit;
|
|
|
struct fc_rport *rport = unit->port->rport;
|
|
|
- scsi_scan_target(&rport->dev, 0, rport->scsi_target_id,
|
|
|
+
|
|
|
+ if (rport && rport->port_state == FC_PORTSTATE_ONLINE)
|
|
|
+ scsi_scan_target(&rport->dev, 0, rport->scsi_target_id,
|
|
|
scsilun_to_int((struct scsi_lun *)&unit->fcp_lun), 0);
|
|
|
atomic_clear_mask(ZFCP_STATUS_UNIT_SCSI_WORK_PENDING, &unit->status);
|
|
|
zfcp_unit_put(unit);
|