On Fri, Mar 27, 2009 at 10:54:54PM +0100, Jan Kara wrote: > Yes, but OTOH this will make the problem "my data was lost after crash" > worse... Although rewrites aren't that common either so maybe it won't > be that bad. The real question is how many applications actually do random access I/O to rewrite blocks and *don't* use fsync()? Most of the applications which do block rewrites are databases, and those folks generally pay very close attention to using synchronization primiives. It's the people use the standard I/O interfaces, or and who end up rewriting files by replacing them outright that tend to lose. OTOH, the really big databases will tend to use direct I/O, so they won't be dirtying the page cache anyway. So maybe it's not worth the effort; it's not clear what workloads will do huge numbers of block rewrites in the first place. Your test program does, of course, but the question is whether that happens a lot in real life, and so it's an open question whether we should optimize for it, and whether we can assume that applications which do this tend to be databases like sqlite that are quite anal already about calling fsync(). - 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