Re: How to boot up an ARM board enabled CONFIG_SPARSEMEM

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2014/7/2 2:45, Yinghai Lu wrote:
> On Tue, Jul 1, 2014 at 12:29 AM, Zhang Zhen <zhenzhang.zhang@xxxxxxxxxx> wrote:
>> Hi,
>>
>> Recently We are testing stable kernel 3.10 on an ARM board.
>> It failed to boot if we enabled CONFIG_SPARSEMEM config.
> 
> Arm support 2 sockets and numa now?
> 
ARM doesn't support numa until now. We have added memory hotplug feature on ARM arch.
So we need to enable CONFIG_SPARSEMEM.

>> 1. In mem_init() and show_mem() compare pfn instead of page just like the patch in attachement.
>> 2. Enable CONFIG_SPARSEMEM_ALLOC_MEM_MAP_TOGETHER when enabled CONFIG_SPARSEMEM.
>>
>> QUESTION:
>>
>> I want to know why CONFIG_SPARSEMEM_ALLOC_MEM_MAP_TOGETHER depends on x86_64 ?
> 
> That make memory allocation have less memory hole, from old bootmem bitmap
> allocation stage.
> 
> Maybe we don't need that anymore as we have memblock allocation that is more
> smarter with alignment handling.
> 
> Also allocating big size and use them block by block, could save some time on
> searching on allocation function when memblock have lots of entries on
> memory/reserved arrays.
> 
> Thanks
> 
> Yinghai
> 
Hi, Yinghai

Have you seen my patch ?
If we enabled CONFIG_SPARSEMEM here in the patch need to enable CONFIG_SPARSEMEM_ALLOC_MEM_MAP_TOGETHER to
guarantee the pages of different sections are continuous.

So in my opinion, CONFIG_SPARSEMEM_ALLOC_MEM_MAP_TOGETHER doesn't need to depend on x86_64, which helps futher
coding.

If i'm wrong, please let me know !

Thanks for your comments!

> 


--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxx.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]