Andreas Dilger wrote: > 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... *grin* I wouldn't -veto- it, but I think we have to maintain a balance between defensive programming and trying to handle every possible piece of buggy hardware by doing too many extra gyrations in the code... -Eric > 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