lkml.org 
[lkml]   [2016]   [May]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [v2 PATCH] mm: move page_ext_init after all struct pages are initialized
From
Date
On 5/20/2016 6:16 AM, Michal Hocko wrote:
> On Thu 19-05-16 15:13:26, Yang Shi wrote:
> [...]
>> diff --git a/init/main.c b/init/main.c
>> index b3c6e36..2075faf 100644
>> --- a/init/main.c
>> +++ b/init/main.c
>> @@ -606,7 +606,6 @@ asmlinkage __visible void __init start_kernel(void)
>> initrd_start = 0;
>> }
>> #endif
>> - page_ext_init();
>> debug_objects_mem_init();
>> kmemleak_init();
>> setup_per_cpu_pageset();
>> @@ -1004,6 +1003,8 @@ static noinline void __init kernel_init_freeable(void)
>> sched_init_smp();
>>
>> page_alloc_init_late();
>> + /* Initialize page ext after all struct pages are initializaed */
>> + page_ext_init();
>>
>> do_basic_setup();
>
> I might be missing something but don't we have the same problem with
> CONFIG_FLATMEM? page_ext_init_flatmem is called way earlier. Or
> CONFIG_DEFERRED_STRUCT_PAGE_INIT is never enabled for CONFIG_FLATMEM?

Yes, CONFIG_DEFERRED_STRUCT_PAGE_INIT depends on MEMORY_HOTPLUG which
depends on SPARSEMEM. So, this config is not valid for FLATMEM at all.

Thanks,
Yang

>

\
 
 \ /
  Last update: 2016-05-20 18:01    [W:0.139 / U:0.120 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site