From: vsrinivas Date: Wed, 2 Mar 2011 16:25:20 +0000 (-0800) Subject: Add ATA TRIM project X-Git-Url: https://gitweb.dragonflybsd.org/ikiwiki.git/commitdiff_plain/8ff766198ff33116de95232cf3b9f8f732a7c094 Add ATA TRIM project --- diff --git a/docs/developer/gsocprojectspage/index.mdwn b/docs/developer/gsocprojectspage/index.mdwn index b33a269d..bbbbd236 100644 --- a/docs/developer/gsocprojectspage/index.mdwn +++ b/docs/developer/gsocprojectspage/index.mdwn @@ -344,5 +344,17 @@ Meta information: * Difficulty: Hard * Contact point: kernel@crater.dragonflybsd.org +--- + +##### ATA TRIM and filesystem/swap support +* Some devices support an ATA command, 'TRIM', which marks disk blocks as 'not in use'; on SSDs, for example, not-in-use blocks can be used to support better wear leveling and to prevent performance degradation over time with fragmentation of the free block set. +* DFly's BIO system supports BIO_DELETE commands; these commands are not tied to device level TRIM commands, however +* Once BIO_DELETE commands are possible, it'd be very nice for DragonFly's swap code to generate BIO_DELETE commands for unused swap blocks (batch them!); this would would work well with SSDs and swapcache +* HAMMER should also send BIO_DELETE commands to mark unused blocks unused. Running HAMMER on an SSD would be more pleasant then. +* FreeBSD implemented this support on Jan 29th for UFS; it may serve as a good reference. + +* Prerequisites: C, OS internals, a touch of file systems +* Difficult: Not too hard +* Contact point: kernel@crater.dragonflybsd.org --- (please add)