Re: Any reason to use put_page in slub.c?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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>


[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]