Date: Tue, 1 Jul 2014 10:51:20 +0000 (UTC) From: Scott Long <scottl@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r268088 - head/sys/dev/mps Message-ID: <201407011051.s61ApKO0005710@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
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:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201407011051.s61ApKO0005710>