Re: [PATCH 6/6] mm/slab: allocation fastpath without disabling irq

From: Andreas Mohr
Date: Tue Jan 06 2015 - 11:26:30 EST


On Tue, Jan 06, 2015 at 09:33:15AM -0600, Christoph Lameter wrote:
> On Tue, 6 Jan 2015, Andreas Mohr wrote:
> > by merely queuing them into a simple submission queue
> > which then will be delay-applied by main-context
> > either once main-context enters a certain "quiet" state (e.g. context switch?),
> > or once main-context needs to actively take into account
>
> This is basically the same approach as you mentioned before and would
> multiply the resources needed. I think we are close to be able to avoid
> allocations from interrupt contexts. Someone would need to perform an
> audit to see what is left to be done. If so then lots of allocator paths
> both in the page allocator and slab allocator can be dramatically
> simplified.

OK, so we seem to be already well near the finishing line of single-context
operation.

In case of multi-context access, in general I'd guess
that challenges are similar to
"traditional" multi-thread-capable heap allocator implementations in userspace,
where I'm sure large amounts of research papers (some dead-tree?)
have been written about how to achieve scalable low-contention
multi-thread access arbitration to the same shared underlying memory resource
(but since in Linux circles some implementations exceed usual
accumulated research knowledge / Best Practice, such papers may or may not be
of much help ;)

Andreas Mohr
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/