diff --git a/sys/dev/raid/mps/mps_sas.c b/sys/dev/raid/mps/mps_sas.c --- a/sys/dev/raid/mps/mps_sas.c +++ b/sys/dev/raid/mps/mps_sas.c @@ -1683,9 +1683,9 @@ } if (csio->ccb_h.flags & CAM_CDB_POINTER) - bcopy(csio->cdb_io.cdb_ptr, &req->CDB.CDB32[0], csio->cdb_len); + bcopy(csio->cdb_io.cdb_ptr, &req->CDB.CDB32[0], imin(csio->cdb_len, sizeof(req->CDB.CDB32))); else - bcopy(csio->cdb_io.cdb_bytes, &req->CDB.CDB32[0],csio->cdb_len); + bcopy(csio->cdb_io.cdb_bytes, &req->CDB.CDB32[0], imin(csio->cdb_len, sizeof(req->CDB.CDB32))); req->IoFlags = csio->cdb_len; /*