On 22 August 2016 at 20:32, Shaun Tancheff <shaun.tancheff@xxxxxxxxxxx> wrote: > On Mon, Aug 22, 2016 at 3:07 PM, Tom Yan <tom.ty89@xxxxxxxxx> wrote: >> I don't see how that's possible. count / n_block will always be >> smaller than 65535 * ATA_MAX_TRIM_RNUM(64) = 4194240. Not to mention >> that isn't even a "buffer limit" anyway. By SG_IO do you mean like >> SCSI Write Same commands that issued with sg_write_same or so? If >> that's the case, that's what exactly commit 5c79097a28c2 >> ("libata-scsi: reject WRITE SAME (16) with n_block that exceeds >> limit") is for. > > Ah, I see. You are guarding the only user of ata_set_lba_range_entries(). Yup. It is the only right thing to do anyway, that we leave the function "open" and guard per context when we use it. Say if ata_set_lba_range_entries() is gonna be a function that is shared by others, it would only make this commit more important. As I said, we did not guard it with a certain buffer limit, but merely redundantly guard it with a ("humanized") limit that applies to TRIM only. > Still if you are going to do that you have to alert any new user that they > must have an appropriately sized buffer to be overwriting. > > Better to move it out of ata.h then the limit the scope of accidental > misuse? I am not sure if it is really necessary but that's fine to me. I see that you have been doing it in your SCT Write Same patch series. Probably I can/should just leave the move to you? > > Regards, > Shaun -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html