linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 0/5] Fix the incorrect memmep defer init handling and do some cleanup
@ 2020-12-20  8:27 Baoquan He
  2020-12-20  8:27 ` [PATCH v2 1/5] mm: memmap defer init dosn't work as expected Baoquan He
                   ` (5 more replies)
  0 siblings, 6 replies; 14+ messages in thread
From: Baoquan He @ 2020-12-20  8:27 UTC (permalink / raw)
  To: linux-kernel; +Cc: linux-mm, akpm, gopakumarr, rppt, david, bhe

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@DM6PR05MB5292.namprd05.prod.outlook.com/

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.

VMware helped do the testing for the patch 1 of v1 version which was based
on master branch of Linus's tree on their VMware ESI platform, while the
patch 1 is not changed in functionality in v2. And I haven't got a
ia64 machine to compile or test, will really appreciate if anyone can help
compile this patchset on one. This patchset is based on the latest next/master,
only did the basic test.  

Baoquan He (5):
  mm: memmap defer init dosn't work as expected
  mm: rename memmap_init() and memmap_init_zone()
  mm: simplify parater of function memmap_init_zone()
  mm: simplify parameter of setup_usemap()
  mm: remove unneeded local variable in free_area_init_core

 arch/ia64/include/asm/pgtable.h |  3 +-
 arch/ia64/mm/init.c             | 16 +++++----
 include/linux/mm.h              |  5 +--
 mm/memory_hotplug.c             |  2 +-
 mm/page_alloc.c                 | 60 ++++++++++++++++-----------------
 5 files changed, 43 insertions(+), 43 deletions(-)

-- 
2.17.2



^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2020-12-23  8:12 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-12-20  8:27 [PATCH v2 0/5] Fix the incorrect memmep defer init handling and do some cleanup Baoquan He
2020-12-20  8:27 ` [PATCH v2 1/5] mm: memmap defer init dosn't work as expected Baoquan He
2020-12-21  6:32   ` Mike Rapoport
2020-12-20  8:27 ` [PATCH v2 2/5] mm: rename memmap_init() and memmap_init_zone() Baoquan He
2020-12-21  6:33   ` Mike Rapoport
2020-12-20  8:27 ` [PATCH v2 3/5] mm: simplify parater of function memmap_init_zone() Baoquan He
2020-12-21  6:34   ` Mike Rapoport
2020-12-20  8:27 ` [PATCH v2 4/5] mm: simplify parameter of setup_usemap() Baoquan He
2020-12-21  6:34   ` Mike Rapoport
2020-12-20  8:27 ` [PATCH v2 5/5] mm: remove unneeded local variable in free_area_init_core Baoquan He
2020-12-21  6:35   ` Mike Rapoport
2020-12-23  1:46 ` [PATCH v2 0/5] Fix the incorrect memmep defer init handling and do some cleanup Andrew Morton
2020-12-23  2:05   ` Baoquan He
2020-12-23  8:12     ` Baoquan He

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).