Re: [RFC 3/8] slub: Add isolate() and migrate() methods

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

 



On Fri, Dec 29, 2017 at 10:42:46PM -0800, Matthew Wilcox wrote:
> Is this the right approach?  I could imagine there being more ops in
> the future.  I suspect we should bite the bullet now and do:

I thought of a cute additional slab operation we could define, print().
We could do something like this ...

        struct page *page = virt_to_head_page(ptr);
        if (!PageSlab(page))
                return false;
        slab = page->slab_cache;
        if (!(slab->flags & SLAB_FLAGS_OPS) || !slab->ops->print)
                return false;
        slab->ops->print(ptr);
        return true;

and get nice debugging output like we have for VM_BUG_ON_PAGE, only
for any type that's implemented a slab operations vec.  Of course, this
won't replace VM_BUG_ON_PAGE because struct pages aren't slab-allocated
(but could we pretend they are?)

--
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 OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]
  Powered by Linux