Hello, After hitting this twice on two different systems, I'm now running with the tentative fix applied, but it's not a meaningful test since it's non reproducible. However it is possible to inject this bug if you do "grep E820 /proc/iomem" and then find a phys addr there with a struct page (i.e. pfn_valid) in a zone, with this change: min_pfn = pageblock_start_pfn(cc->free_pfn - (distance >> 1)); + if (cc->zone is the zone where the e820 physaddr has a pfn_valid) + min_pfn = physaddr_of_E820_non_RAM_page_with_valid_pfn >> PAGE_SHIFT; I didn't try to inject the bug to validate the fix and it'd be great if someone can try that to validate this or any other fix. Andrea Arcangeli (1): mm: compaction: avoid fast_isolate_around() to set pageblock_skip on reserved pages mm/compaction.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)