Andrea Arcangeli <andrea@xxxxxxx> writes: > On Sat, Sep 15, 2007 at 02:14:42PM +0200, Goswin von Brederlow wrote: >> I keep coming back to the fact that movable objects should be moved >> out of the way for unmovable ones. Anything else just allows > > That's incidentally exactly what the slab does, no need to reinvent > the wheel for that, it's an old problem and there's room for > optimization in the slab partial-reuse logic too. Just boost the order > 0 page size and use the slab to get the 4k chunks. The sgi/defrag > design is backwards. How does that help? Will slabs move objects around to combine two partially filled slabs into nearly full one? If not consider this: - You create a slab for 4k objects based on 64k compound pages. (first of all that wastes you a page already for the meta infos) - Something movable allocates a 14 4k page in there making the slab partially filled. - Something unmovable alloactes a 4k page making the slab mixed and full. - Repeat until out of memory. OR - Userspace allocates a lot of memory in those slabs. - Userspace frees one in every 15 4k chunks. - Userspace forks 1000 times causing an unmovable task structure to appear in 1000 slabs. MfG Goswin - To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html