Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753508AbbEAJVR (ORCPT ); Fri, 1 May 2015 05:21:17 -0400 Received: from cantor2.suse.de ([195.135.220.15]:36492 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751378AbbEAJVQ (ORCPT ); Fri, 1 May 2015 05:21:16 -0400 Date: Fri, 1 May 2015 10:21:13 +0100 From: Mel Gorman To: Andrew Morton Cc: Nathan Zimmer , Dave Hansen , Waiman Long , Scott Norton , Daniel J Blueman , Linux-MM , LKML Subject: [PATCH] mm: meminit: Initialise a subset of struct pages if CONFIG_DEFERRED_STRUCT_PAGE_INIT is set -fix Message-ID: <20150501092113.GC2449@suse.de> References: <1430231830-7702-1-git-send-email-mgorman@suse.de> <1430231830-7702-8-git-send-email-mgorman@suse.de> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-15 Content-Disposition: inline In-Reply-To: <1430231830-7702-8-git-send-email-mgorman@suse.de> User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1631 Lines: 37 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 --- mm/internal.h | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/mm/internal.h b/mm/internal.h index 24314b671db1..85189fce7f61 100644 --- a/mm/internal.h +++ b/mm/internal.h @@ -386,10 +386,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 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/