mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-12-15 08:44:14 +08:00
scsi: ibmvfc: Do not wait for initial device scan
The initial device scan might take some time, and there really is no need to wait for it during probe(). So return immediately from scsi_scan_host() during probe() and avoid any udev stalls during booting. Link: https://lore.kernel.org/r/20210817075306.11315-1-mwilck@suse.com Acked-by: Tyrel Datwyler <tyreld@linux.ibm.com> Signed-off-by: Hannes Reinecke <hare@suse.com> Signed-off-by: Martin Wilck <mwilck@suse.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
This commit is contained in:
parent
0394b5048e
commit
7a3795f287
@ -3292,14 +3292,18 @@ static int ibmvfc_scan_finished(struct Scsi_Host *shost, unsigned long time)
|
||||
int done = 0;
|
||||
|
||||
spin_lock_irqsave(shost->host_lock, flags);
|
||||
if (time >= (init_timeout * HZ)) {
|
||||
if (!vhost->scan_timeout)
|
||||
done = 1;
|
||||
else if (time >= (vhost->scan_timeout * HZ)) {
|
||||
dev_info(vhost->dev, "Scan taking longer than %d seconds, "
|
||||
"continuing initialization\n", init_timeout);
|
||||
"continuing initialization\n", vhost->scan_timeout);
|
||||
done = 1;
|
||||
}
|
||||
|
||||
if (vhost->scan_complete)
|
||||
if (vhost->scan_complete) {
|
||||
vhost->scan_timeout = init_timeout;
|
||||
done = 1;
|
||||
}
|
||||
spin_unlock_irqrestore(shost->host_lock, flags);
|
||||
return done;
|
||||
}
|
||||
@ -6084,6 +6088,7 @@ static int ibmvfc_probe(struct vio_dev *vdev, const struct vio_device_id *id)
|
||||
vhost->client_scsi_channels = min(shost->nr_hw_queues, nr_scsi_channels);
|
||||
vhost->using_channels = 0;
|
||||
vhost->do_enquiry = 1;
|
||||
vhost->scan_timeout = 0;
|
||||
|
||||
strcpy(vhost->partition_name, "UNKNOWN");
|
||||
init_waitqueue_head(&vhost->work_wait_q);
|
||||
|
@ -876,6 +876,7 @@ struct ibmvfc_host {
|
||||
int reinit;
|
||||
int delay_init;
|
||||
int scan_complete;
|
||||
int scan_timeout;
|
||||
int logged_in;
|
||||
int mq_enabled;
|
||||
int using_channels;
|
||||
|
Loading…
Reference in New Issue
Block a user