Re: More problems in setup_pcpu_remap()

From: Tejun Heo
Date: Thu Apr 02 2009 - 00:43:20 EST


Hello,

David Miller wrote:
> The way this code is currently designed, it can exhaust all of the
> VMALLOC address space on both x86 and x86_64, and then some.
>
> It allocates PMD_SIZE * num_possible_cpus() of vmalloc space.
>
> PMD_SIZE is 2MB, num_possible_cpus() can be up to 4096....
> which can easily exceed (VMALLOC_END - VMALLOC_START)
>
> Initially I had set out to implement sparc64 support for the new
> per-cpu stuff, but it looks like I'm stuck finding bugs in the x86
> implementation instead :-)

Eh... sorry about that. :-)

I guess we'll have to put a cap on how high possible cpus can be for
remap allocator. e.g. if single chunk size is over 20% of the whole
vmalloc area, don't use remap. Does anyone have a good random %
number on mind?

Thanks.

--
tejun
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/