On Wed, Aug 10, 2016 at 5:56 AM, Tom Yan <tom.ty89@xxxxxxxxx> wrote: > On 10 August 2016 at 09:00, Shaun Tancheff <shaun@xxxxxxxxxxxx> wrote: >> static unsigned int ata_scsi_write_same_xlat(struct ata_queued_cmd *qc) >> { >> struct ata_taskfile *tf = &qc->tf; >> struct scsi_cmnd *scmd = qc->scsicmd; >> struct ata_device *dev = qc->dev; >> const u8 *cdb = scmd->cmnd; >> + struct scatterlist *sg; >> u64 block; >> u32 n_block; >> + const u32 trmax = ATA_MAX_TRIM_RNUM; >> u32 size; >> - void *buf; >> u16 fp; >> u8 bp = 0xff; >> >> @@ -3319,10 +3363,9 @@ static unsigned int ata_scsi_write_same_xlat(struct ata_queued_cmd *qc) >> if (!scsi_sg_count(scmd)) >> goto invalid_param_len; >> >> - buf = page_address(sg_page(scsi_sglist(scmd))); >> - >> - if (n_block <= 65535 * ATA_MAX_TRIM_RNUM) { >> - size = ata_set_lba_range_entries(buf, ATA_MAX_TRIM_RNUM, block, n_block); >> + sg = scsi_sglist(scmd); >> + if (n_block <= 0xffff * cmax) { > > Although this got moved and corrected in the next patch, but perhaps > you should still correct the `cmax` here, which should be `trmax`. You are correct. I will fix this up. Thanks! >> + size = ata_format_dsm_trim_descr(sg, trmax, block, n_block); >> } else { >> fp = 2; >> goto invalid_fld; -- Shaun Tancheff -- To unsubscribe from this list: send the line "unsubscribe linux-ide" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html