diff options
author | Linus Torvalds <torvalds@g5.osdl.org> | 2006-01-14 15:16:07 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-01-14 15:16:07 -0500 |
commit | 12dbf3fc4d06d2c0c4c44dc0612df04248b3cfd3 (patch) | |
tree | 158610ef6c7711afb60d78956ab4b131bf6a08ef /drivers/scsi/scsi_sysfs.c | |
parent | 61b7efddc5256225099d13185659e9ad9d8abc8a (diff) | |
parent | fc091e03820bf67e543362bd40959701a71d0c27 (diff) |
Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6
Diffstat (limited to 'drivers/scsi/scsi_sysfs.c')
-rw-r--r-- | drivers/scsi/scsi_sysfs.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/drivers/scsi/scsi_sysfs.c b/drivers/scsi/scsi_sysfs.c index ea7f3a433572..a77b32deaf8f 100644 --- a/drivers/scsi/scsi_sysfs.c +++ b/drivers/scsi/scsi_sysfs.c | |||
@@ -106,7 +106,10 @@ static int scsi_scan(struct Scsi_Host *shost, const char *str) | |||
106 | return -EINVAL; | 106 | return -EINVAL; |
107 | if (check_set(&lun, s3)) | 107 | if (check_set(&lun, s3)) |
108 | return -EINVAL; | 108 | return -EINVAL; |
109 | res = scsi_scan_host_selected(shost, channel, id, lun, 1); | 109 | if (shost->transportt->user_scan) |
110 | res = shost->transportt->user_scan(shost, channel, id, lun); | ||
111 | else | ||
112 | res = scsi_scan_host_selected(shost, channel, id, lun, 1); | ||
110 | return res; | 113 | return res; |
111 | } | 114 | } |
112 | 115 | ||
@@ -745,9 +748,9 @@ void scsi_remove_device(struct scsi_device *sdev) | |||
745 | { | 748 | { |
746 | struct Scsi_Host *shost = sdev->host; | 749 | struct Scsi_Host *shost = sdev->host; |
747 | 750 | ||
748 | down(&shost->scan_mutex); | 751 | mutex_lock(&shost->scan_mutex); |
749 | __scsi_remove_device(sdev); | 752 | __scsi_remove_device(sdev); |
750 | up(&shost->scan_mutex); | 753 | mutex_unlock(&shost->scan_mutex); |
751 | } | 754 | } |
752 | EXPORT_SYMBOL(scsi_remove_device); | 755 | EXPORT_SYMBOL(scsi_remove_device); |
753 | 756 | ||