On Thu, Jun 18, 2020 at 06:26:49PM +0200, Greg KH wrote:
On Thu, Jun 18, 2020 at 05:55:43PM +0200, gregkh@linuxfoundation.org wrote:
The patch below does not apply to the 5.7-stable tree. If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to stable@vger.kernel.org.
Oops, I applied things out of order, I've queued this and the 5.4 version up, but 4.19 doesn't apply as the dependant patch does not apply.
Something like this should work?
diff --git a/mm/page_alloc.c b/mm/page_alloc.c index 7181dfe76440..b7905a075e79 100644 --- a/mm/page_alloc.c +++ b/mm/page_alloc.c @@ -1611,11 +1611,13 @@ static int __init deferred_init_memmap(void *data) spfn = max_t(unsigned long, first_init_pfn, PFN_UP(spa)); epfn = min_t(unsigned long, zone_end_pfn(zone), PFN_DOWN(epa)); nr_pages += deferred_init_pages(nid, zid, spfn, epfn); + cond_resched(); } for_each_free_mem_range(i, nid, MEMBLOCK_NONE, &spa, &epa, NULL) { spfn = max_t(unsigned long, first_init_pfn, PFN_UP(spa)); epfn = min_t(unsigned long, zone_end_pfn(zone), PFN_DOWN(epa)); deferred_free_pages(nid, zid, spfn, epfn); + cond_resched(); }
/* Sanity check that the next zone really is unpopulated */