diff options
author | Mel Gorman <mgorman@suse.de> | 2015-05-14 01:01:34 +0000 |
---|---|---|
committer | Johannes Weiner <hannes@cmpxchg.org> | 2015-05-14 01:01:34 +0000 |
commit | ff53b26bca45e2282d427b132455b47bb49f2233 (patch) | |
tree | a5204bb38f91140a31f4ecf2aa95046319118691 | |
parent | 6671e9eb541e57cd14a900862282f395499d3d07 (diff) | |
download | mm-next-ff53b26bca45e2282d427b132455b47bb49f2233.tar.gz |
mm: meminit: Initialise a subset of struct pages if CONFIG_DEFERRED_STRUCT_PAGE_INIT is set -fix
This is take 2 on describing why these section names exist. If accepted
then it should be considered a fix for the mmotm patch
mm-meminit-initialise-a-subset-of-struct-pages-if-config_deferred_struct_page_init-is-set.patch
Signed-off-by: Mel Gorman <mgorman@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-rw-r--r-- | mm/internal.h | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/mm/internal.h b/mm/internal.h index 2a799080379677..88ac7be741ca54 100644 --- a/mm/internal.h +++ b/mm/internal.h @@ -388,10 +388,14 @@ static inline void mminit_verify_zonelist(void) #endif /* CONFIG_DEBUG_MEMORY_INIT */ /* - * Deferred struct page initialisation requires some early init functions that - * are removed before kswapd is up and running. The feature depends on memory - * hotplug so put the data and code required by deferred initialisation into - * the __meminit section where they are preserved. + * Deferred struct page initialisation requires init functions that are freed + * before kswapd is available. Reuse the memory hotplug section annotation + * to mark the required code. + * + * __defermem_init is code that always exists but is annotated __meminit to + * avoid section warnings. + * __defer_init code gets marked __meminit when deferring struct page + * initialistion but is otherwise in the init section. */ #ifdef CONFIG_DEFERRED_STRUCT_PAGE_INIT #define __defermem_init __meminit |