Re: [Bug #14467] Linker errors on ia64 with NR_CPUS=4096

Christoph Lameter
2009-10-29T18:57:19Z

On Thu, 29 Oct 2009, Tejun Heo wrote:

> It's just for sched_init() which has irq off but is not really in
> atomic context and does GFP_KERNEL allocations. The following comment
> has been added to the first patch to explain it.

Uhmm.. Is the page allocator available at that point? If you are
constricted to the reserved per cpu area then IA64 can still run out of
space if its booted with 4096 actual cpus.

> + * allocations are done using GFP_KERNEL with pcpu_lock released. In
> + * general, percpu memory can't be allocated with irq off but
> + * irqsave/restore are still used in alloc path so that it can be used
> + * from early init path - sched_init() specifically.
>
> Thanks.

Maybe make the patch a bit more general so that it can operate in an
atomic context and handles gfp flags nicely?