|
@@ -744,8 +744,11 @@ _ctl_do_mpt_command(struct MPT2SAS_ADAPTER *ioc,
|
|
|
mpt2sas_base_get_sense_buffer_dma(ioc, smid);
|
|
|
priv_sense = mpt2sas_base_get_sense_buffer(ioc, smid);
|
|
|
memset(priv_sense, 0, SCSI_SENSE_BUFFERSIZE);
|
|
|
- mpt2sas_base_put_smid_scsi_io(ioc, smid,
|
|
|
- le16_to_cpu(mpi_request->FunctionDependent1));
|
|
|
+ if (mpi_request->Function == MPI2_FUNCTION_SCSI_IO_REQUEST)
|
|
|
+ mpt2sas_base_put_smid_scsi_io(ioc, smid,
|
|
|
+ le16_to_cpu(mpi_request->FunctionDependent1));
|
|
|
+ else
|
|
|
+ mpt2sas_base_put_smid_default(ioc, smid);
|
|
|
break;
|
|
|
}
|
|
|
case MPI2_FUNCTION_SCSI_TASK_MGMT:
|