DF-1019 / fix.diff
diff --git a/sys/bus/cam/scsi/scsi_da.c b/sys/bus/cam/scsi/scsi_da.c --- a/sys/bus/cam/scsi/scsi_da.c +++ b/sys/bus/cam/scsi/scsi_da.c @@ -440,8 +440,10 @@ bytes_start = del_num[0]; /* TRIM occurs on 512-byte sectors. */ - KKASSERT((bytes_left % 512) == 0); - KKASSERT((bytes_start% 512) == 0); + if ((bytes_left % 512) != 0 || (bytes_start % 512) != 0) { + error = EINVAL; + break; + } /* Break TRIM up into int-sized commands because of b_bcount */ |