Deferred struct page initialization issue vs memblocks

From: Mika PenttilÃ
Date: Tue Sep 29 2015 - 00:02:49 EST


deferred_init_memmap() uses for_each_mem_pfn_range() which (in x86)
uses memblocks. Because of CONFIG_ARCH_DISCARD_MEMBLOCK, the memblock
infos have already been freed to page allocator (in
free_low_memory_core_early()), which happens before
deferred_init_memmap().

Maybe the fix is not to allow DISCARD_MEMBLOCK in deferred case, or
discard memblock infos later.

Thanks,

Mika
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/