diff options
author | Christof Schmitt <christof.schmitt@de.ibm.com> | 2010-08-30 10:55:09 +0200 |
---|---|---|
committer | James Bottomley <James.Bottomley@suse.de> | 2010-09-09 15:36:44 -0500 |
commit | 91978465b1e5f89025cd43cd2102943160ec6dee (patch) | |
tree | 18408d5465c98abb29924b9dfbfa86a5b9f96b7e | |
parent | 634651fab36dc8d7c3b1a1aa14f9ec1e29de9f0f (diff) |
[SCSI] zfcp: Reorder registration of initial SCSI device
Make sure that the rport registration did complete and then register
SCSI device directly. Otherwise the unit_enqueue would race with the
call to zfcp_scsi_queue_unit_register.
Reviewed-by: Swen Schillig <swen@vnet.ibm.com>
Signed-off-by: Christof Schmitt <christof.schmitt@de.ibm.com>
Signed-off-by: James Bottomley <James.Bottomley@suse.de>
-rw-r--r-- | drivers/s390/scsi/zfcp_aux.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/s390/scsi/zfcp_aux.c b/drivers/s390/scsi/zfcp_aux.c index 96fa1f53639..68df57157d4 100644 --- a/drivers/s390/scsi/zfcp_aux.c +++ b/drivers/s390/scsi/zfcp_aux.c @@ -73,13 +73,14 @@ static void __init zfcp_init_device_configure(char *busid, u64 wwpn, u64 lun) if (!port) goto out_port; + flush_work(&port->rport_work); unit = zfcp_unit_enqueue(port, lun); if (IS_ERR(unit)) goto out_unit; zfcp_erp_unit_reopen(unit, 0, "auidc_1", NULL); zfcp_erp_wait(adapter); - flush_work(&unit->scsi_work); + zfcp_scsi_scan(unit); out_unit: put_device(&port->dev); |