diff options
Diffstat (limited to 'drivers/message/fusion/mptspi.c')
| -rw-r--r-- | drivers/message/fusion/mptspi.c | 12 | 
1 files changed, 5 insertions, 7 deletions
diff --git a/drivers/message/fusion/mptspi.c b/drivers/message/fusion/mptspi.c index 5653e505f91..49d11338294 100644 --- a/drivers/message/fusion/mptspi.c +++ b/drivers/message/fusion/mptspi.c @@ -780,33 +780,31 @@ static int mptspi_slave_configure(struct scsi_device *sdev)  }  static int -mptspi_qcmd_lck(struct scsi_cmnd *SCpnt, void (*done)(struct scsi_cmnd *)) +mptspi_qcmd(struct Scsi_Host *shost, struct scsi_cmnd *SCpnt)  { -	struct _MPT_SCSI_HOST *hd = shost_priv(SCpnt->device->host); +	struct _MPT_SCSI_HOST *hd = shost_priv(shost);  	VirtDevice	*vdevice = SCpnt->device->hostdata;  	MPT_ADAPTER *ioc = hd->ioc;  	if (!vdevice || !vdevice->vtarget) {  		SCpnt->result = DID_NO_CONNECT << 16; -		done(SCpnt); +		SCpnt->scsi_done(SCpnt);  		return 0;  	}  	if (SCpnt->device->channel == 1 &&  		mptscsih_is_phys_disk(ioc, 0, SCpnt->device->id) == 0) {  		SCpnt->result = DID_NO_CONNECT << 16; -		done(SCpnt); +		SCpnt->scsi_done(SCpnt);  		return 0;  	}  	if (spi_dv_pending(scsi_target(SCpnt->device)))  		ddvprintk(ioc, scsi_print_command(SCpnt)); -	return mptscsih_qcmd(SCpnt,done); +	return mptscsih_qcmd(SCpnt);  } -static DEF_SCSI_QCMD(mptspi_qcmd) -  static void mptspi_slave_destroy(struct scsi_device *sdev)  {  	struct scsi_target *starget = scsi_target(sdev);  | 
