Re: [PATCH v1 1/3] mm: pass meminit_context to __free_pages_core()
From: Oscar Salvador <osalvador@suse.de>
Date: 2024-06-10 04:03:42
Also in:
linux-hyperv, linux-mm, lkml, xen-devel
From: Oscar Salvador <osalvador@suse.de>
Date: 2024-06-10 04:03:42
Also in:
linux-hyperv, linux-mm, lkml, xen-devel
On Fri, Jun 07, 2024 at 11:09:36AM +0200, David Hildenbrand wrote:
In preparation for further changes, let's teach __free_pages_core() about the differences of memory hotplug handling. Move the memory hotplug specific handling from generic_online_page() to __free_pages_core(), use adjust_managed_page_count() on the memory hotplug path, and spell out why memory freed via memblock cannot currently use adjust_managed_page_count(). Signed-off-by: David Hildenbrand <redacted>
All looks good but I am puzzled with something.
+ } else {
+ /* memblock adjusts totalram_pages() ahead of time. */
+ atomic_long_add(nr_pages, &page_zone(page)->managed_pages);
+ }You say that memblock adjusts totalram_pages ahead of time, and I guess you mean in memblock_free_all() pages = free_low_memory_core_early() totalram_pages_add(pages); but that is not ahead, it looks like it is upading __after__ sending them to buddy? -- Oscar Salvador SUSE Labs