On 2010-10-22, at 08:46, Ric Wheeler wrote: > On 10/22/2010 10:32 AM, Lukas Czerner wrote: >> >> Also there is a big win, when discard >> also zeroes data, because in that case we can just skip inode table >> initialization (zeroing) without any need of in-kernel lazyinit code >> enabled. And we get all this for free. It was introduced with Sandeens >> patch: >> >> http://marc.info/?l=linux-ext4&m=128234048208327&w=2 >> >> So, I would rather leave it on by default. > > You cannot 100% depend on discard zeroing blocks - that is not a universal requirement of devices that support it. Specifically, for ATA devices, I think that there are optional bits that specify how a device will behave when you read from a trimmed region. That patch also checks for the zeroing feature. When this patch was first under discussion, I proposed that we validate that the device is actually zeroed by doing a write a non-zero block to the disk and then calling discard+zero for that region, and reading back the block and verifying it. Eric wasn't convinced that was necessary, maybe you can convince him more... Cheers, Andreas -- To unsubscribe from this list: send the line "unsubscribe linux-ext4" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html