[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <Pine.LNX.4.64.0711010557340.27666@schroedinger.engr.sgi.com>
Date: Thu, 1 Nov 2007 05:59:06 -0700 (PDT)
From: Christoph Lameter <clameter@....com>
To: Eric Dumazet <dada1@...mosbay.com>
cc: akpm@...ux-foundation.org, linux-arch@...r.kernel.org,
linux-kernel@...r.kernel.org,
Mathieu Desnoyers <mathieu.desnoyers@...ymtl.ca>,
Pekka Enberg <penberg@...helsinki.fi>
Subject: Re: [patch 1/7] allocpercpu: Make it a true per cpu allocator by
allocating from a per cpu array
On Thu, 1 Nov 2007, Eric Dumazet wrote:
> Christoph Lameter a écrit :
> > +
> > +enum unit_type { FREE, END, USED };
> > +
> > +static u8 cpu_alloc_map[UNITS_PER_CPU] = { 1, };
>
> You mean END here instead of 1 :)
Sigh. A leftover. This can be removed.
> > +/*
> > + * Allocate an object of a certain size
> > + *
> > + * Returns a per cpu pointer that must not be directly used.
> > + */
> > +static void *cpu_alloc(unsigned long size)
> > +{
>
> We might need to give an alignment constraint here. Some per_cpu users would
> like to get a 64 bytes zone, siting in one cache line and not two :)
Well not sure about that. Alignment is mostly useful on SMP with cacheline
contention. This is a per cpu area that should not be contended.
Powered by blists - more mailing lists