diff options
Diffstat (limited to 'drivers/message/fusion/mptscsih.c')
-rw-r--r-- | drivers/message/fusion/mptscsih.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/drivers/message/fusion/mptscsih.c b/drivers/message/fusion/mptscsih.c index 57752751712b..4a7d1afcb666 100644 --- a/drivers/message/fusion/mptscsih.c +++ b/drivers/message/fusion/mptscsih.c | |||
@@ -1438,9 +1438,14 @@ mptscsih_qcmd(struct scsi_cmnd *SCpnt, void (*done)(struct scsi_cmnd *)) | |||
1438 | && (vdevice->vtarget->tflags & MPT_TARGET_FLAGS_Q_YES) | 1438 | && (vdevice->vtarget->tflags & MPT_TARGET_FLAGS_Q_YES) |
1439 | && (SCpnt->device->tagged_supported)) { | 1439 | && (SCpnt->device->tagged_supported)) { |
1440 | scsictl = scsidir | MPI_SCSIIO_CONTROL_SIMPLEQ; | 1440 | scsictl = scsidir | MPI_SCSIIO_CONTROL_SIMPLEQ; |
1441 | } else { | 1441 | if (SCpnt->request && SCpnt->request->ioprio) { |
1442 | if (((SCpnt->request->ioprio & 0x7) == 1) || | ||
1443 | !(SCpnt->request->ioprio & 0x7)) | ||
1444 | scsictl |= MPI_SCSIIO_CONTROL_HEADOFQ; | ||
1445 | } | ||
1446 | } else | ||
1442 | scsictl = scsidir | MPI_SCSIIO_CONTROL_UNTAGGED; | 1447 | scsictl = scsidir | MPI_SCSIIO_CONTROL_UNTAGGED; |
1443 | } | 1448 | |
1444 | 1449 | ||
1445 | /* Use the above information to set up the message frame | 1450 | /* Use the above information to set up the message frame |
1446 | */ | 1451 | */ |
@@ -1796,7 +1801,7 @@ mptscsih_abort(struct scsi_cmnd * SCpnt) | |||
1796 | dtmprintk(ioc, printk(MYIOC_s_DEBUG_FMT "task abort: " | 1801 | dtmprintk(ioc, printk(MYIOC_s_DEBUG_FMT "task abort: " |
1797 | "Command not in the active list! (sc=%p)\n", ioc->name, | 1802 | "Command not in the active list! (sc=%p)\n", ioc->name, |
1798 | SCpnt)); | 1803 | SCpnt)); |
1799 | retval = 0; | 1804 | retval = SUCCESS; |
1800 | goto out; | 1805 | goto out; |
1801 | } | 1806 | } |
1802 | 1807 | ||