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

2007-08-06 Thread Daniel Phillips
Hi Matt, On Monday 06 August 2007 13:23, Matt Mackall wrote: > 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 d

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

2007-08-06 Thread Matt Mackall
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 (a

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

2007-08-06 Thread Daniel Phillips
On Monday 06 August 2007 12:36, Peter Zijlstra wrote: > On Mon, 2007-08-06 at 12:31 -0700, Daniel Phillips wrote: > > On Monday 06 August 2007 11:17, Peter Zijlstra wrote: > > > And how do we know a page was taken out of the reserves? > > > > Why not return that in the low bit of the page address?

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

2007-08-06 Thread Peter Zijlstra
On Mon, 2007-08-06 at 12:31 -0700, Daniel Phillips wrote: > On Monday 06 August 2007 11:17, Peter Zijlstra wrote: > > And how do we know a page was taken out of the reserves? > > Why not return that in the low bit of the page address? This is a > little more cache efficient, does not leave that

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

2007-08-06 Thread Daniel Phillips
On Monday 06 August 2007 11:17, Peter Zijlstra wrote: > And how do we know a page was taken out of the reserves? Why not return that in the low bit of the page address? This is a little more cache efficient, does not leave that odd footprint in the page union and forces the caller to examine th

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

2007-08-06 Thread Daniel Phillips
On Monday 06 August 2007 11:17, Peter Zijlstra wrote: > lim_{n -> inf} (2^(n+1)/((2^n)+1)) = 2^lim_{n -> inf} ((n+1)-n) = 2^1 = 2 Glad I asked :-) > > Patch [3/10] adds a new field to struct page. > > No it doesn't. True. It is not immediately obvious from the declaration that the overloaded

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

2007-08-06 Thread Peter Zijlstra
On Mon, 2007-08-06 at 10:56 -0700, Christoph Lameter wrote: > On Mon, 6 Aug 2007, Peter Zijlstra wrote: > > > We want a guarantee for N bytes from kmalloc(), this translates to a demand > > on the slab allocator for 2*N+m (due to the power-of-two nature of kmalloc > > slabs), where m is the meta-

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

2007-08-06 Thread Peter Zijlstra
On Mon, 2007-08-06 at 10:35 -0700, Daniel Phillips wrote: > On Monday 06 August 2007 03:29, Peter Zijlstra wrote: > > We want a guarantee for N bytes from kmalloc(), this translates to a > > demand on the slab allocator for 2*N+m (due to the power-of-two > > nature of kmalloc slabs), where m is th

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

2007-08-06 Thread Christoph Lameter
On Mon, 6 Aug 2007, Peter Zijlstra wrote: > We want a guarantee for N bytes from kmalloc(), this translates to a demand > on the slab allocator for 2*N+m (due to the power-of-two nature of kmalloc > slabs), where m is the meta-data needed by the allocator itself. The guarantee occurs in what con

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

2007-08-06 Thread Daniel Phillips
On Monday 06 August 2007 03:29, 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