X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=drivers%2Fscsi%2Fimm.c;h=eda703d736b9a1cdf186d064d5e6769af33bf75e;hb=c7b5ebbddf7bcd3651947760f423e3783bbe6573;hp=a4e953bed5b0084a58152055460e5153ab3b1acc;hpb=9213980e6a70d8473e0ffd4b39ab5b6caaba9ff5;p=linux-2.6.git diff --git a/drivers/scsi/imm.c b/drivers/scsi/imm.c index a4e953bed..eda703d73 100644 --- a/drivers/scsi/imm.c +++ b/drivers/scsi/imm.c @@ -758,7 +758,7 @@ static void imm_interrupt(void *data) case DID_OK: break; case DID_NO_CONNECT: - printk("imm: no device at SCSI ID %i\n", cmd->target); + printk("imm: no device at SCSI ID %i\n", cmd->device->id); break; case DID_BUS_BUSY: printk("imm: BUS BUSY - EPP timeout detected\n"); @@ -793,7 +793,7 @@ static void imm_interrupt(void *data) imm_pb_dismiss(dev); spin_lock_irqsave(host->host_lock, flags); - dev->cur_cmd = 0; + dev->cur_cmd = NULL; cmd->scsi_done(cmd); spin_unlock_irqrestore(host->host_lock, flags); return; @@ -1118,6 +1118,12 @@ static int device_check(imm_struct *dev) return -ENODEV; } +static int imm_adjust_queue(struct scsi_device *device) +{ + blk_queue_bounce_limit(device->request_queue, BLK_BOUNCE_HIGH); + return 0; +} + static struct scsi_host_template imm_template = { .module = THIS_MODULE, .proc_name = "imm", @@ -1133,6 +1139,7 @@ static struct scsi_host_template imm_template = { .cmd_per_lun = 1, .use_clustering = ENABLE_CLUSTERING, .can_queue = 1, + .slave_alloc = imm_adjust_queue, }; /***************************************************************************