spin_unlock_irqrestore(&retry_lock, flags);
/* Create a scsi error for this */
current_command = (Scsi_Cmnd *)m[3];
- lock = current_command->host->host_lock;
+ lock = current_command->device->host->host_lock;
printk("Aborted %ld\n", current_command->serial_number);
spin_lock_irqsave(lock, flags);
else if (current_command->request_bufflen)
pci_unmap_single(c->pdev, (dma_addr_t)((long)current_command->SCp.ptr), current_command->request_bufflen, scsi_to_pci_dma_dir(current_command->sc_data_direction));
- lock = current_command->host->host_lock;
+ lock = current_command->device->host->host_lock;
spin_lock_irqsave(lock, flags);
current_command->scsi_done(current_command);
spin_unlock_irqrestore(lock, flags);
* Do the incoming paperwork
*/
- host = SCpnt->host;
+ host = SCpnt->device->host;
hostdata = (struct i2o_scsi_host *)host->hostdata;
c = hostdata->controller;
SCpnt->scsi_done = done;
- if(SCpnt->target > 15)
+ if(SCpnt->device->id > 15)
{
- printk(KERN_ERR "i2o_scsi: Wild target %d.\n", SCpnt->target);
+ printk(KERN_ERR "i2o_scsi: Wild target %d.\n", SCpnt->device->id);
return -1;
}
- tid = hostdata->task[SCpnt->target][SCpnt->lun];
+ tid = hostdata->task[SCpnt->device->id][SCpnt->device->lun];
dprintk(("qcmd: Tid = %d\n", tid));
* with tagged queueing. We throw in the odd ordered
* tag to stop them starving themselves.
*/
- if((jiffies - hostdata->tagclock[SCpnt->target][SCpnt->lun]) > (5*HZ))
+ if((jiffies - hostdata->tagclock[SCpnt->device->id][SCpnt->device->lun]) > (5*HZ))
{
tag=0x01800000; /* ORDERED! */
- hostdata->tagclock[SCpnt->target][SCpnt->lun]=jiffies;
+ hostdata->tagclock[SCpnt->device->id][SCpnt->device->lun]=jiffies;
}
else
{
printk(KERN_WARNING "i2o_scsi: Aborting command block.\n");
- host = SCpnt->host;
+ host = SCpnt->device->host;
hostdata = (struct i2o_scsi_host *)host->hostdata;
- tid = hostdata->task[SCpnt->target][SCpnt->lun];
+ tid = hostdata->task[SCpnt->device->id][SCpnt->device->lun];
if(tid==-1)
{
printk(KERN_ERR "i2o_scsi: Impossible command to abort!\n");
*/
- host = SCpnt->host;
+ host = SCpnt->device->host;
spin_unlock_irq(host->host_lock);