thank you.....but then i don't really understand...please help me out: quoting from the article: "At the lower levels, groups like the T13 committee (which manages the ATA standards) have created protocol extensions to allow the host computer to indicate that certain sectors are no longer in use; T13 calls its new command "trim." Upon receipt of a trim command, an ATA device can immediately add the indicated sectors to its free list, discarding any data stored there. Filesystems, in turn, can cause these commands to be issued whenever a file is deleted (or truncated). That will allow the storage device to make full use of the space which is truly free, making the whole thing work better." So my question is: so now the hardware maintain something called a "freelist"? the interface between software and hardware are the ATA commands, correct? so anything after the ATA are firmware-implementation? so is there not now a duplicated list of "freelist" of sectors - one at the firmware level, and another at the filesystem level? if true, then it also mean a corresponding ATA command for "allocation" of sectors....correct? i think and deduced these are needed....because of wear leveling requirements as explained earlier in the article. >From the ATA spec: http://t13.org/Documents/UploadedDocuments/docs2007/e07154r3-Data_Set_Management_Proposal_for_ATA-ACS2.pdf it can be understood that the requirements for the TRIM (or deallocate basically) command is because of frequency statistics needed by the firmware.....to implement wear leveling i supposed? Some further insights into the caveats behind the lwn.net article is here: http://archives.free.net.ph/message/20081202.232841.72e4577f.en.html I really admire David Woodhouse's TRIM request implementation: http://lwn.net/Articles/292788/ And I found a very good writeup on the complexities of TRIM behaving in different scenario in T10: http://www.t10.org/ftp/t10/document.08/08-347r1.pdf On Fri, Jan 16, 2009 at 1:11 PM, Greg Freemyer <greg.freemyer@xxxxxxxxx> wrote: > On Thu, Jan 15, 2009 at 10:14 PM, Peter Teoh <htmldeveloper@xxxxxxxxx> wrote: >> On Fri, Jan 16, 2009 at 7:00 AM, Greg Freemyer <greg.freemyer@xxxxxxxxx> wrote: >>> >>> Those articles don't highlight it, but it is my understanding that in >>> the linux vanilla kernel only ext4, vfat, and btrfs (new in 2.6.29 I >>> believe) have been enhanced to make the DISCARD calls. >> sorry....what is a DISCARD calls? thanks for sharing... > > One of the articles was all about DISCARD requests. See the title of > the article: http://lwn.net/Articles/293658/ > > Per the article, the actual call is: blkdev_issue_discard() > > Most Linux filesystems do not yet call blkdev_issue_discard() would > have been more technically accurate than what I said. > > Greg > -- > Greg Freemyer > Litigation Triage Solutions Specialist > http://www.linkedin.com/in/gregfreemyer > First 99 Days Litigation White Paper - > http://www.norcrossgroup.com/forms/whitepapers/99%20Days%20whitepaper.pdf > > The Norcross Group > The Intersection of Evidence & Technology > http://www.norcrossgroup.com > -- Regards, Peter Teoh -- To unsubscribe from this list: send an email with "unsubscribe kernelnewbies" to ecartis@xxxxxxxxxxxx Please read the FAQ at http://kernelnewbies.org/FAQ