I think this issue is fixed by
move-three-functions-that-are-only-needed-for.patch in current -mm tree.
Is it not enough?
Thanks.
> __kmalloc_section_memmap()/__kfree_section_memmap() and friends are only
> used by the memory hotplug code. Move these in to the existing
> CONFIG_MEMORY_HOTPLUG block.
>
> Signed-off-by: Paul Mundt <[email protected]>
>
> --
>
> mm/sparse.c | 42 +++++++++++++++++++++---------------------
> 1 file changed, 21 insertions(+), 21 deletions(-)
>
> diff --git a/mm/sparse.c b/mm/sparse.c
> index 1302f83..35f739a 100644
> --- a/mm/sparse.c
> +++ b/mm/sparse.c
> @@ -229,6 +229,7 @@ static struct page __init *sparse_early_mem_map_alloc(unsigned long pnum)
> return NULL;
> }
>
> +#ifdef CONFIG_MEMORY_HOTPLUG
> static struct page *__kmalloc_section_memmap(unsigned long nr_pages)
> {
> struct page *page, *ret;
> @@ -269,27 +270,6 @@ static void __kfree_section_memmap(struct page *memmap, unsigned long nr_pages)
> }
>
> /*
> - * Allocate the accumulated non-linear sections, allocate a mem_map
> - * for each and record the physical to section mapping.
> - */
> -void __init sparse_init(void)
> -{
> - unsigned long pnum;
> - struct page *map;
> -
> - for (pnum = 0; pnum < NR_MEM_SECTIONS; pnum++) {
> - if (!valid_section_nr(pnum))
> - continue;
> -
> - map = sparse_early_mem_map_alloc(pnum);
> - if (!map)
> - continue;
> - sparse_init_one_section(__nr_to_section(pnum), pnum, map);
> - }
> -}
> -
> -#ifdef CONFIG_MEMORY_HOTPLUG
> -/*
> * returns the number of sections whose mem_maps were properly
> * set. If this is <=0, then that means that the passed-in
> * map was not consumed and must be freed.
> @@ -329,3 +309,23 @@ out:
> return ret;
> }
> #endif
> +
> +/*
> + * Allocate the accumulated non-linear sections, allocate a mem_map
> + * for each and record the physical to section mapping.
> + */
> +void __init sparse_init(void)
> +{
> + unsigned long pnum;
> + struct page *map;
> +
> + for (pnum = 0; pnum < NR_MEM_SECTIONS; pnum++) {
> + if (!valid_section_nr(pnum))
> + continue;
> +
> + map = sparse_early_mem_map_alloc(pnum);
> + if (!map)
> + continue;
> + sparse_init_one_section(__nr_to_section(pnum), pnum, map);
> + }
> +}
>
> --
> To unsubscribe, send a message with 'unsubscribe linux-mm' in
> the body to [email protected]. For more info on Linux MM,
> see: http://www.linux-mm.org/ .
> Don't email: <a href=mailto:"[email protected]"> [email protected] </a>
--
Yasunori Goto
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]