Re: vm/fs meetup details
From: Jörn Engel <hidden>
Date: 2007-07-06 16:01:52
Also in:
linux-fsdevel
On Fri, 6 July 2007 09:52:14 -0400, Chris Mason wrote:
On Fri, 6 Jul 2007 23:42:01 +1000 David Chinner [off-list ref] wrote:quoted
Hmmm - I guess you could use it for writeback ordering. I hadn't really thought about that. Doesn't seem a particularly efficient way of doing it, though. Why not just use multiple address spaces for this? i.e. one per level and flush in ascending order.
Interesting idea. Is it possible to attach several address spaces to an inode? That would cure some headaches.
At least in the case of btrfs, the perfect order for sync is disk order ;) COW happens when blocks are changed for the first time in a transaction, not when they are written out to disk. If logfs is writing things out some form of tree order, you're going to have to group disk allocations such that tree order reflects disk order somehow.
I don't understand half of what you're writing. Maybe we should do another design session on irc? At any rate, logfs simply writes out blocks. When it is handed a page to write, the corresponding block is written. Allocation happens at writeout time, not earlier. Each written block causes a higher-level block to get changed, so that is written immediatly as well, until the next higher level is the inode. I would like to instead just dirty the higher-level block, so that multiple changes can accumulate before indirect blocks are written. And I have no idea how transactions relate to all this.
But, the part where we toss leaves first is definitely useful.
Shouldn't LRU ordering already do that. I can even imagine cases when leaves should be tossed last and LRU ordering would dtrt. JA?rn -- The competent programmer is fully aware of the strictly limited size of his own skull; therefore he approaches the programming task in full humility, and among other things he avoids clever tricks like the plague. -- Edsger W. Dijkstra -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>