On Mon, Aug 24, 2009 at 05:43:36PM -0600, Andreas Dilger wrote: > Without transaction checksums waiting on all of the blocks together > is NOT safe. If the commit record is on disk, but the rest of the > transaction's blocks are not then during replay it may cause garbage > to be written from the journal into the filesystem metadata. Yes, I *said* that we can only wait on all of the blocks together with the commit record when doing journal checksums. Sorry if I didn't make that clear enough. That's the one optimization we using journal checksums buys us. Unfortunately it does not allow us to omit the barrier operation.... and have real-world testing experience that without the barrier, a power drop can cause significant filesystem corruption and potential data loss. Try using Chris Mason's torture-test workload with async-checksums without this patch; you will get data corruption if you try dropping power while his torture-test is running. I know you really don't like the barrier, but I'm afraid it's not safe to run without it, even with journal checksums. - Ted -- 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