Messages in this thread | | | Date | Sun, 16 Sep 2007 19:46:58 +0200 | From | Jörn Engel <> | Subject | Re: [00/41] Large Blocksize Support V7 (adds memmap support) |
| |
On Sun, 16 September 2007 00:30:32 +0200, Andrea Arcangeli wrote: > > Movable? I rather assume all slab allocations aren't movable. Then > slab defrag can try to tackle on users like dcache and inodes. Keep in > mind that with the exception of updatedb, those inodes/dentries will > be pinned and you won't move them, which is why I prefer to consider > them not movable too... since there's no guarantee they are.
I have been toying with the idea of having seperate caches for pinned and movable dentries. Downside of such a patch would be the number of memcpy() operations when moving dentries from one cache to the other. Upside is that a fair amount of slab cache can be made movable. memcpy() is still faster than reading an object from disk.
Most likely the current reaction to such a patch would be to shoot it down due to overhead, so I didn't pursue it. All I have is an old patch to seperate never-cached from possibly-cached dentries. It will increase the odds of freeing a slab, but provide no guarantee.
But the point here is: dentries/inodes can be made movable if there are clear advantages to it. Maybe they should?
Jörn
-- Joern's library part 2: http://www.art.net/~hopkins/Don/unix-haters/tirix/embarrassing-memo.html - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |