Messages in this thread | | | From | Tom Yan <> | Date | Mon, 22 Aug 2016 20:57:52 +0000 | Subject | Re: [PATCH v6 3/4] SCT Write Same / DSM Trim |
| |
On 22 August 2016 at 18:52, Tom Yan <tom.ty89@gmail.com> wrote: > > For the "payload block size" that is "always" 512-byte as per the same > spec, I don't think we need to concern about it. I think it only > matters if we want to enable multi-block TRIM payload according to the > reported limit in IDENTIFY DEVICE data. Probably it merely means that > the "each of the blocks" in the reported limit will always mean 64 > TRIM entries, even on 4Kn drives, instead of 512. >
Actually that's what we assumed in our current code that forms the DSM command as well. See how (hob_)feature for queued TRIM and how (hob_)nsect for non-queued TRIM are set in ata_scsi_write_same_xlat in libata-scsi ('size / 512').
So if you are going to increase the payload block size per logical sector size (in other word, you assume that the payload block size is _expected_ to be the logical block size, in spite of what ACS told, you'll need to adjust how the aforementioned fields in the ATA taskfile are set as well.
| |