svn commit: r226118 - in head/sys/dev: isp mps mpt
Marius Strobl
marius at FreeBSD.org
Fri Oct 7 21:23:43 UTC 2011
Author: marius
Date: Fri Oct 7 21:23:42 2011
New Revision: 226118
URL: http://svn.freebsd.org/changeset/base/226118
Log:
Sync with ahc(4)/ahd(4)/sym(4) etc:
Zero any sense not transferred by the device as the SCSI specification
mandates that any untransferred data should be assumed to be zero.
Reviewed by: ken
Modified:
head/sys/dev/isp/isp_freebsd.h
head/sys/dev/mps/mps_sas.c
head/sys/dev/mpt/mpt_cam.c
Modified: head/sys/dev/isp/isp_freebsd.h
==============================================================================
--- head/sys/dev/isp/isp_freebsd.h Fri Oct 7 21:00:26 2011 (r226117)
+++ head/sys/dev/isp/isp_freebsd.h Fri Oct 7 21:23:42 2011 (r226118)
@@ -486,6 +486,7 @@ default: \
#define XS_SAVE_SENSE(xs, sense_ptr, slen) do { \
(xs)->ccb_h.status |= CAM_AUTOSNS_VALID; \
+ memset(&(xs)->sense_data, 0, sizeof(&(xs)->sense_data));\
memcpy(&(xs)->sense_data, sense_ptr, imin(XS_SNSLEN(xs),\
slen)); \
if (slen < (xs)->sense_len) \
Modified: head/sys/dev/mps/mps_sas.c
==============================================================================
--- head/sys/dev/mps/mps_sas.c Fri Oct 7 21:00:26 2011 (r226117)
+++ head/sys/dev/mps/mps_sas.c Fri Oct 7 21:23:42 2011 (r226118)
@@ -1675,6 +1675,7 @@ mpssas_scsiio_complete(struct mps_softc
sense_len = min(rep->SenseCount, ccb->csio.sense_len -
ccb->csio.sense_resid);
+ bzero(&ccb->csio.sense_data, sizeof(&ccb->csio.sense_data));
bcopy(cm->cm_sense, &ccb->csio.sense_data, sense_len);
ccb->ccb_h.status |= CAM_AUTOSNS_VALID;
}
Modified: head/sys/dev/mpt/mpt_cam.c
==============================================================================
--- head/sys/dev/mpt/mpt_cam.c Fri Oct 7 21:00:26 2011 (r226117)
+++ head/sys/dev/mpt/mpt_cam.c Fri Oct 7 21:23:42 2011 (r226118)
@@ -3178,6 +3178,7 @@ mpt_scsi_reply_frame_handler(struct mpt_
else
ccb->csio.sense_resid = 0;
+ bzero(&ccb->csio.sense_data, sizeof(&ccb->csio.sense_data));
bcopy(req->sense_vbuf, &ccb->csio.sense_data,
min(ccb->csio.sense_len, sense_returned));
}
More information about the svn-src-all
mailing list