diff --git a/sys/dev/raid/ciss/ciss.c b/sys/dev/raid/ciss/ciss.c --- a/sys/dev/raid/ciss/ciss.c +++ b/sys/dev/raid/ciss/ciss.c @@ -3246,7 +3246,8 @@ debug(0, "SCSI_STATUS_CHECK_COND sense size %d resid %d\n", ce->sense_length, ce->residual_count); bzero(&csio->sense_data, SSD_FULL_SIZE); - bcopy(&ce->sense_info[0], &csio->sense_data, ce->sense_length); + bcopy(&ce->sense_info[0], &csio->sense_data, + imin(ce->sense_length, imin(SSD_FULL_SIZE, csio->sense_len))); if (csio->sense_len > ce->sense_length) csio->sense_resid = csio->sense_len - ce->sense_length; else