Messages in this thread | | | Date | Mon, 17 Aug 2009 14:16:19 -0400 | From | Ric Wheeler <> | Subject | Re: Discard support (was Re: [PATCH] swap: send callback when swap slot is freed) |
| |
Chiming in here a bit late, but coalescing requests is also a good way to prevent read-modify-write cycles.
Specifically, if I remember the concern correctly, for the WRITE_SAME with unmap bit set, when the IO is not evenly aligned on the "erase chunk" (whatever they call it) boundary the device can be forced to do a read-modify-write (of zeroes) to the end or beginning of that region.
For a disk array, the WRITE_SAME with unmap bit when done cleanly on an aligned boundary can be done entirely in the array's cache. The read-modify-write can generate several reads to the back end disks which are significantly slower....
ric
| |