diff --git a/arch/x86/mm/init_64.c b/arch/x86/mm/init_64.c index b3e6c3075accd63958afe3f1ec1ec6b681a82a26..a87ea0e4b3dca3e7149aa03321af508cc1216b0d 100644 --- a/arch/x86/mm/init_64.c +++ b/arch/x86/mm/init_64.c @@ -88,7 +88,11 @@ early_param("gbpages", parse_direct_gbpages_on); int after_bootmem; -static __init void *spp_getpage(void) +/* + * NOTE: This function is marked __ref because it calls __init function + * (alloc_bootmem_pages). It's safe to do it ONLY when after_bootmem == 0. + */ +static __ref void *spp_getpage(void) { void *ptr;