diff options
Diffstat (limited to 'drivers/scsi/scsi.c')
-rw-r--r-- | drivers/scsi/scsi.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/scsi/scsi.c b/drivers/scsi/scsi.c index 6913b0623167..73994e2ac2cb 100644 --- a/drivers/scsi/scsi.c +++ b/drivers/scsi/scsi.c | |||
@@ -565,7 +565,8 @@ int scsi_dispatch_cmd(struct scsi_cmnd *cmd) | |||
565 | /* | 565 | /* |
566 | * If SCSI-2 or lower, store the LUN value in cmnd. | 566 | * If SCSI-2 or lower, store the LUN value in cmnd. |
567 | */ | 567 | */ |
568 | if (cmd->device->scsi_level <= SCSI_2) { | 568 | if (cmd->device->scsi_level <= SCSI_2 && |
569 | cmd->device->scsi_level != SCSI_UNKNOWN) { | ||
569 | cmd->cmnd[1] = (cmd->cmnd[1] & 0x1f) | | 570 | cmd->cmnd[1] = (cmd->cmnd[1] & 0x1f) | |
570 | (cmd->device->lun << 5 & 0xe0); | 571 | (cmd->device->lun << 5 & 0xe0); |
571 | } | 572 | } |
@@ -1243,7 +1244,7 @@ static int __init init_scsi(void) | |||
1243 | if (error) | 1244 | if (error) |
1244 | goto cleanup_sysctl; | 1245 | goto cleanup_sysctl; |
1245 | 1246 | ||
1246 | for_each_cpu(i) | 1247 | for_each_possible_cpu(i) |
1247 | INIT_LIST_HEAD(&per_cpu(scsi_done_q, i)); | 1248 | INIT_LIST_HEAD(&per_cpu(scsi_done_q, i)); |
1248 | 1249 | ||
1249 | printk(KERN_NOTICE "SCSI subsystem initialized\n"); | 1250 | printk(KERN_NOTICE "SCSI subsystem initialized\n"); |