On Sat, Aug 05, 2006 at 06:22:50AM -0700, Arjan van de Ven wrote:An unmount will flush out anything that is dirty anyway. Memory
Christoph Hellwig wrote:
Another idea, similar to how atime updates work in xfs currently mightthis is sort of having a "dirty" and "dirty atime" split for the inode I suppose..
be interesting: Always update atime in core, but don't start a
transaction just for it - instead only flush it when you'd do it anyway,
that is another transaction or evicting the inode.
shouldn't be impossible to do with a bit of vfs support..
This is certainly another possibility. There may be other uses for
the idea of a half-dirty inode.
However, one thing I want to avoid is an event that would cause the
build-up and subsequent write-out of a big list of half-dirty inodes -
think about the worst case: grep -r of the entire file system,
followed by some kind of memory pressure or an unmount. Would we then
flush out a write to every inode in the file system? Ew. (This is
worse than having atime on because with full atime, the writes would
be spread out during the execution of the grep -r command.)