aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/message/fusion/mptspi.c
diff options
context:
space:
mode:
authorJames Bottomley <JBottomley@Parallels.com>2014-06-09 10:49:39 -0400
committerJames Bottomley <JBottomley@Parallels.com>2014-06-09 10:49:39 -0400
commitb4c43993f448d0e25fe40690d9e9c81a8ebda623 (patch)
tree7cc19990b0b00226ce3063d956790368bfe62ada /drivers/message/fusion/mptspi.c
parent63ff05910d9652f8a0c4dbb6c7772cfca5364f12 (diff)
parente90b25fa40a43f63fc9a035c11ba9ca3e4e60949 (diff)
Merge remote-tracking branch 'scsi-queue/drivers-for-3.16' into for-linus
Diffstat (limited to 'drivers/message/fusion/mptspi.c')
-rw-r--r--drivers/message/fusion/mptspi.c12
1 files changed, 5 insertions, 7 deletions
diff --git a/drivers/message/fusion/mptspi.c b/drivers/message/fusion/mptspi.c
index 5653e505f91f..49d11338294b 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)
780} 780}
781 781
782static int 782static int
783mptspi_qcmd_lck(struct scsi_cmnd *SCpnt, void (*done)(struct scsi_cmnd *)) 783mptspi_qcmd(struct Scsi_Host *shost, struct scsi_cmnd *SCpnt)
784{ 784{
785 struct _MPT_SCSI_HOST *hd = shost_priv(SCpnt->device->host); 785 struct _MPT_SCSI_HOST *hd = shost_priv(shost);
786 VirtDevice *vdevice = SCpnt->device->hostdata; 786 VirtDevice *vdevice = SCpnt->device->hostdata;
787 MPT_ADAPTER *ioc = hd->ioc; 787 MPT_ADAPTER *ioc = hd->ioc;
788 788
789 if (!vdevice || !vdevice->vtarget) { 789 if (!vdevice || !vdevice->vtarget) {
790 SCpnt->result = DID_NO_CONNECT << 16; 790 SCpnt->result = DID_NO_CONNECT << 16;
791 done(SCpnt); 791 SCpnt->scsi_done(SCpnt);
792 return 0; 792 return 0;
793 } 793 }
794 794
795 if (SCpnt->device->channel == 1 && 795 if (SCpnt->device->channel == 1 &&
796 mptscsih_is_phys_disk(ioc, 0, SCpnt->device->id) == 0) { 796 mptscsih_is_phys_disk(ioc, 0, SCpnt->device->id) == 0) {
797 SCpnt->result = DID_NO_CONNECT << 16; 797 SCpnt->result = DID_NO_CONNECT << 16;
798 done(SCpnt); 798 SCpnt->scsi_done(SCpnt);
799 return 0; 799 return 0;
800 } 800 }
801 801
802 if (spi_dv_pending(scsi_target(SCpnt->device))) 802 if (spi_dv_pending(scsi_target(SCpnt->device)))
803 ddvprintk(ioc, scsi_print_command(SCpnt)); 803 ddvprintk(ioc, scsi_print_command(SCpnt));
804 804
805 return mptscsih_qcmd(SCpnt,done); 805 return mptscsih_qcmd(SCpnt);
806} 806}
807 807
808static DEF_SCSI_QCMD(mptspi_qcmd)
809
810static void mptspi_slave_destroy(struct scsi_device *sdev) 808static void mptspi_slave_destroy(struct scsi_device *sdev)
811{ 809{
812 struct scsi_target *starget = scsi_target(sdev); 810 struct scsi_target *starget = scsi_target(sdev);