Messages in this thread | | | Date | Thu, 29 May 2008 22:20:45 -0700 (PDT) | From | Christoph Lameter <> | Subject | Re: [patch 02/41] cpu alloc: The allocator |
| |
On Fri, 30 May 2008, Eric Dumazet wrote:
> > +static DEFINE_PER_CPU(UNIT_TYPE, area[UNITS]); > > > area[] is not guaranteed to be aligned on anything but 4 bytes. > > If someone then needs to call cpu_alloc(8, GFP_KERNEL, 8), it might get an non > aligned result. > > Either you should add an __attribute__((__aligned__(PAGE_SIZE))), > or take into account the real address of area[] in cpu_alloc() to avoid waste > of up to PAGE_SIZE bytes > per cpu.
I think cacheline aligning should be sufficient. People should not allocate large page aligned objects here.
| |