Merge branch 'linus'
[linux-2.6.git] / drivers / scsi / scsi_scan.c
index 8160c00d1092b1bc77d9b4cbf0c497afc60dee08..a43b9ec3aefd66f2953841c964cb2fd2c5746106 100644 (file)
@@ -1453,6 +1453,12 @@ struct scsi_device *__scsi_add_device(struct Scsi_Host *shost, uint channel,
        struct device *parent = &shost->shost_gendev;
        struct scsi_target *starget;
 
+       if (strncmp(scsi_scan_type, "none", 4) == 0)
+               return ERR_PTR(-ENODEV);
+
+       if (!shost->async_scan)
+               scsi_complete_async_scans();
+
        starget = scsi_alloc_target(parent, channel, id);
        if (!starget)
                return ERR_PTR(-ENOMEM);