On Tue, 31 Jul 2012, Glauber Costa wrote: > On 07/31/2012 06:09 PM, Christoph Lameter wrote: > > That is understood. Typically these object where page sized though and > > various assumptions (pretty dangerous ones as you are finding out) are > > made regarding object reuse. The fallback of SLUB for higher order allocs > > to the page allocator avoids these problems for higher order pages. > omg... I would be very thankful if you would go through the tree and check for any remaining use cases like that. Would take care of your problem. > I am curious how slab handles this, since it doesn't seem to refcount in > the same way slub does? Slabs are not refcounting in general. With slab larger sized free pages may be queued for awhile on the freelist. I guess this has taken care of these issues in the past. > Now, I am still left with the original problem: > __free_pages() here would be a superior solution, and the right thing to > do. Should we just convert it - and then fix whoever we find to be > abusing it (it doesn't mean anything, but I am running it on my systems > since then - 0 problems), or should I just create a hacky > put_accounted_page()? > > I really, really dislike the later. So do I. If you can verify that this no longer occurs then your patch wil be fine and we can get rid of the put_page(). -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>