Re: [PATCH 00/10] foundations for reserve-based allocation

Matt Mackall
2007-08-06T20:23:23Z

On Mon, Aug 06, 2007 at 12:29:22PM +0200, Peter Zijlstra wrote:
>
> In the interrest of getting swap over network working and posting in smaller
> series, here is the first series.
>
> This series lays the foundations needed to do reserve based allocation.
> Traditionally we have used mempools (and others like radix_tree_preload) to
> handle the problem.
>
> However this does not fit the network stack. It is built around variable
> sized allocations using kmalloc().
>
> This calls for a different approach.

One wonders if containers are a possible solution. I can already solve
this problem with virtualization: have one VM manage all the network
I/O and export the device as a simpler virtual block device to other
VMs. Provided this VM isn't doing any "real" work and is sized
appropriately, it won't get wedged. Since the other VMs now submit I/O
through the simpler block interface, they can avoid getting wedged
with the standard mempool approach.

If we can run nbd and friends inside their own container that can give
similar isolation, we might not need to add this other complexity.

Just food for thought. I haven't looked closely enough at the
containers implementations yet to determine whether this is possible
or if the overhead in performance or complexity is acceptable.

--
Mathematics is the supreme nostalgia of our time.