Re: [PATCH v1 1/3] mm: pass meminit_context to __free_pages_core()
From: Oscar Salvador <osalvador@suse.de>
Date: 2024-06-10 11:47:31
Also in:
linux-mm, lkml, virtualization, xen-devel
From: Oscar Salvador <osalvador@suse.de>
Date: 2024-06-10 11:47:31
Also in:
linux-mm, lkml, virtualization, xen-devel
On Mon, Jun 10, 2024 at 10:38:05AM +0200, David Hildenbrand wrote:
On 10.06.24 06:03, Oscar Salvador wrote:quoted
On Fri, Jun 07, 2024 at 11:09:36AM +0200, David Hildenbrand wrote:quoted
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.quoted
+ } 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()And memblock_free_late(), which uses atomic_long_inc().
Ah yes.
Right (it's suboptimal, but not really problematic so far. Hopefully Wei can clean it up and move it in here as well)
That would be great.
For the time being "/* memblock adjusts totalram_pages() manually. */"
Yes, I think that is better ;-) Thanks! -- Oscar Salvador SUSE Labs