[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <f0c27d67-3735-300b-76eb-e49d56ab7a10@linaro.org>
Date: Fri, 20 May 2016 08:41:09 -0700
From: "Shi, Yang" <yang.shi@...aro.org>
To: Michal Hocko <mhocko@...nel.org>
Cc: akpm@...ux-foundation.org, iamjoonsoo.kim@....com,
linux-kernel@...r.kernel.org, linux-mm@...ck.org,
linaro-kernel@...ts.linaro.org
Subject: Re: [v2 PATCH] mm: move page_ext_init after all struct pages are
initialized
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
>
Powered by blists - more mailing lists