svn commit: r268088 - head/sys/dev/mps
Scott Long
scottl at FreeBSD.org
Tue Jul 1 10:51:20 UTC 2014
Author: scottl
Date: Tue Jul 1 10:51:20 2014
New Revision: 268088
URL: http://svnweb.freebsd.org/changeset/base/268088
Log:
Don't overload the CCB status field within the driver.
Obtained from: Netflix, Inc.
MFC after: 2 days
Modified:
head/sys/dev/mps/mps_sas.c
Modified: head/sys/dev/mps/mps_sas.c
==============================================================================
--- head/sys/dev/mps/mps_sas.c Tue Jul 1 09:21:32 2014 (r268087)
+++ head/sys/dev/mps/mps_sas.c Tue Jul 1 10:51:20 2014 (r268088)
@@ -1852,7 +1852,7 @@ mpssas_action_scsiio(struct mpssas_softc
* the I/O to the IR volume itself.
*/
if (sc->WD_valid_config) {
- if (mpssas_get_ccbstatus(ccb) != MPS_WD_RETRY) {
+ if (ccb->ccb_h.sim_priv.entries[0].field == MPS_WD_RETRY) {
mpssas_direct_drive_io(sassc, cm, ccb);
} else {
mpssas_set_ccbstatus(ccb, CAM_REQ_INPROG);
@@ -2219,10 +2219,11 @@ mpssas_scsiio_complete(struct mps_softc
*/
if (cm->cm_flags & MPS_CM_FLAGS_DD_IO) {
mps_free_command(sc, cm);
- mpssas_set_ccbstatus(ccb, MPS_WD_RETRY);
+ ccb->ccb_h.sim_priv.entries[0].field = MPS_WD_RETRY;
mpssas_action_scsiio(sassc, ccb);
return;
- }
+ } else
+ ccb->ccb_h.sim_priv.entries[0].field = 0;
switch (le16toh(rep->IOCStatus) & MPI2_IOCSTATUS_MASK) {
case MPI2_IOCSTATUS_SCSI_DATA_UNDERRUN:
More information about the svn-src-all
mailing list