On Sun, 20 Dec 2020 16:27:49 +0800 Baoquan He <bhe@xxxxxxxxxx> wrote: > VMware reported the performance regression during memmap_init() invocation. > And they bisected to commit 73a6e474cb376 ("mm: memmap_init: iterate over > memblock regions rather that check each PFN") causing it. > > https://lore.kernel.org/linux-mm/DM6PR05MB52921FF90FA01CC337DD23A1A4080@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/ > > After investigation, it's caused by incorrect memmap init defer handling > in memmap_init_zone() after commit 73a6e474cb376. The current > memmap_init_zone() only handle one memory region of one zone, while > memmap_init() iterates over all its memory regions and pass them one by > one into memmap_init_zone() to handle. > > So in this patchset, patch 1/5 fixes the bug observed by VMware. Patch > 2~5/5 clean up codes. > accordingly. This series doesn't apply well to current mainline (plus, perhaps, material which I sent to Linus today). So please check all that against mainline in a day or so, refresh, retest and resend. Please separate the fix for the performance regression (1/5) into a single standalone patch, ready for -stable backporting. And then a separate 4-patch series with the cleanups for a 5.11 merge. Thanks.