340175b7 (mm/hotplug: free zone->pageset when a zone becomes empty) introduced zone_pcp_reset and hided it inside CONFIG_MEMORY_HOTREMOVE. The function is since 506e5fb7 (memory-hotplug: allocate zone's pcp before onlining pages) called also called from online_pages which is called outside CONFIG_MEMORY_HOTREMOVE which causes a linkage error.
The function, although not used outside of MEMORY_{HOTPLUT,HOTREMOVE}, seems like universal enough so let's keep it at its current location and only remove the HOTREMOVE guard. Signed-off-by: Michal Hocko <mho...@suse.cz> Cc: David Rientjes <rient...@google.com> Cc: Jiang Liu <liu...@gmail.com> Cc: Len Brown <len.br...@intel.com> Cc: Benjamin Herrenschmidt <b...@kernel.crashing.org> Cc: Paul Mackerras <pau...@samba.org> Cc: Christoph Lameter <c...@linux.com> Cc: Minchan Kim <minchan....@gmail.com> Cc: KOSAKI Motohiro <kosaki.motoh...@jp.fujitsu.com> Cc: Yasuaki Ishimatsu <isimatu.yasu...@jp.fujitsu.com> Cc: Dave Hansen <d...@linux.vnet.ibm.com> Cc: Mel Gorman <m...@csn.ul.ie> --- mm/page_alloc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mm/page_alloc.c b/mm/page_alloc.c index e29912e..30e359c 100644 --- a/mm/page_alloc.c +++ b/mm/page_alloc.c @@ -5981,7 +5981,6 @@ void __meminit zone_pcp_update(struct zone *zone) } #endif -#ifdef CONFIG_MEMORY_HOTREMOVE void zone_pcp_reset(struct zone *zone) { unsigned long flags; @@ -6001,6 +6000,7 @@ void zone_pcp_reset(struct zone *zone) local_irq_restore(flags); } +#ifdef CONFIG_MEMORY_HOTREMOVE /* * All pages in the range must be isolated before calling this. */ -- 1.7.10.4 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/