>>>>> "Greg" == Greg Freemyer <greg.freemyer@xxxxxxxxx> writes: Greg> So for a workload mostly composed of small files residing on a MD Greg> raid 4/5/6 setup, how is this supposed to work. (ie. Tiffs, small Greg> word docs, pdfs, individual emails, etc.) The intent of thin provisioning is not to free up 4KB of space when you delete an email. The intent is to free 4GB when you delete a database or a virtual machine disk image. In the RAID array space, allocation units bigger than a single stripe are common. I'm not aware of any arrays that track sectors or filesystem block sized chunks. We're exposing as much information about the mapping granularity as the hardware is willing to share. This is done so that filesystems have the option of laying out data accordingly. For instance a filesystem can choose to reuse recently freed blocks and to pack data tightly together instead of the traditional approach of spreading things out over the entire LBA range. Greg> Most of the individual files will be less than one stripe wide, so Greg> when they are deleted I gather the discard range will be less than Greg> a stripe and therefore MD would ignore it in the simplest of Greg> implementations. ie. Without coalescence at some point, MD will Greg> never forward discards to the hardware. Greg> Thus I would think for that workload, the nightly full freespace Greg> scan and discard would be the best solution. Well that's certainly possible to implement for small setups. And less tedious than tracking individual sector mapping in MD. -- Martin K. Petersen Oracle Linux Engineering -- To unsubscribe from this list: send the line "unsubscribe linux-raid" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html