Re: about TRIM/DISCARD support and barriers

Tejun Heo
2008-11-23T07:57:50Z

Tejun Heo wrote:
> Dongjun, the only doc I can find about ATA TRIM is the following one.
>
> http://t13.org/Documents/UploadedDocuments/docs2007/e07154r3-Data_Set_Management_Proposal_for_ATA-ACS2.pdf
>
> And AFAICS this hasn't made into ACS yet. Is this what you guys are
> gonna implement and Windows7 is gonna use?

Just went over it. Matthew, if ATA trim is gonna be implemented as
described in the above document, it will support multiple ranges per
command.

Dongjun, the above document strikes out all the latency/performance
related stuff, which looks like the right move to me. Most of those
information can be extracted from access pattern by the device itself
and exposing such optimization parameters to outside seldom works well.
I'm fairly sure such over complexity will end up being
counter-optimization due to different interpretations and executions by
different parties (be it harddrive vendors or different filesystems).

So, can you please confirm that, what we eventually get is simple TRIM
w/ multiple ranges? Which, BTW, makes sense as it's something the
device can't infer from the access pattern. Also, if there still is
wiggle room, what would be a worthy optimization is to allow TRIM
commands to be sent together with other NCQ commands as otherwise the
drive will have to drain all other commands to process a TRIM command
which will be inefficient.

Thanks.

--
tejun