* [PATCH 1/3] hugetlb: Optimise hugetlb_folio_init_tail_vmemmap()
@ 2025-11-06 20:14 Matthew Wilcox (Oracle)
2025-11-06 20:14 ` [PATCH 2/3] migrate: Optimise alloc_migration_target() Matthew Wilcox (Oracle)
2025-11-06 20:14 ` [PATCH 3/3] memory_hotplug: Optimise try_offline_memory_block() Matthew Wilcox (Oracle)
0 siblings, 2 replies; 3+ messages in thread
From: Matthew Wilcox (Oracle) @ 2025-11-06 20:14 UTC (permalink / raw)
To: Andrew Morton; +Cc: Matthew Wilcox (Oracle), linux-mm
Extract the zone number directly from the folio instead of using the
folio's zone number to look up the zone and asking the zone what its
number is.
Also we should use &folio->page instead of casting from folio to page
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
---
mm/hugetlb.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/mm/hugetlb.c b/mm/hugetlb.c
index 0455119716ec..993f984993cd 100644
--- a/mm/hugetlb.c
+++ b/mm/hugetlb.c
@@ -3215,7 +3215,7 @@ static void __init hugetlb_folio_init_tail_vmemmap(struct folio *folio,
unsigned long start_page_number,
unsigned long end_page_number)
{
- enum zone_type zone = zone_idx(folio_zone(folio));
+ enum zone_type zone = folio_zonenum(folio);
int nid = folio_nid(folio);
struct page *page = folio_page(folio, start_page_number);
unsigned long head_pfn = folio_pfn(folio);
@@ -3248,7 +3248,7 @@ static void __init hugetlb_folio_init_vmemmap(struct folio *folio,
ret = folio_ref_freeze(folio, 1);
VM_BUG_ON(!ret);
hugetlb_folio_init_tail_vmemmap(folio, 1, nr_pages);
- prep_compound_head((struct page *)folio, huge_page_order(h));
+ prep_compound_head(&folio->page, huge_page_order(h));
}
static bool __init hugetlb_bootmem_page_prehvo(struct huge_bootmem_page *m)
--
2.47.2
^ permalink raw reply [flat|nested] 3+ messages in thread
* [PATCH 2/3] migrate: Optimise alloc_migration_target()
2025-11-06 20:14 [PATCH 1/3] hugetlb: Optimise hugetlb_folio_init_tail_vmemmap() Matthew Wilcox (Oracle)
@ 2025-11-06 20:14 ` Matthew Wilcox (Oracle)
2025-11-06 20:14 ` [PATCH 3/3] memory_hotplug: Optimise try_offline_memory_block() Matthew Wilcox (Oracle)
1 sibling, 0 replies; 3+ messages in thread
From: Matthew Wilcox (Oracle) @ 2025-11-06 20:14 UTC (permalink / raw)
To: Andrew Morton; +Cc: Matthew Wilcox (Oracle), linux-mm
Extract the zone number directly from the folio instead of using the
folio's zone number to look up the zone and asking the zone what its
number is.
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
---
mm/migrate.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/mm/migrate.c b/mm/migrate.c
index c0e9f15be2a2..cc8d71bd116c 100644
--- a/mm/migrate.c
+++ b/mm/migrate.c
@@ -2190,7 +2190,7 @@ struct folio *alloc_migration_target(struct folio *src, unsigned long private)
gfp_mask |= GFP_TRANSHUGE;
order = folio_order(src);
}
- zidx = zone_idx(folio_zone(src));
+ zidx = folio_zonenum(src);
if (is_highmem_idx(zidx) || zidx == ZONE_MOVABLE)
gfp_mask |= __GFP_HIGHMEM;
--
2.47.2
^ permalink raw reply [flat|nested] 3+ messages in thread
* [PATCH 3/3] memory_hotplug: Optimise try_offline_memory_block()
2025-11-06 20:14 [PATCH 1/3] hugetlb: Optimise hugetlb_folio_init_tail_vmemmap() Matthew Wilcox (Oracle)
2025-11-06 20:14 ` [PATCH 2/3] migrate: Optimise alloc_migration_target() Matthew Wilcox (Oracle)
@ 2025-11-06 20:14 ` Matthew Wilcox (Oracle)
1 sibling, 0 replies; 3+ messages in thread
From: Matthew Wilcox (Oracle) @ 2025-11-06 20:14 UTC (permalink / raw)
To: Andrew Morton; +Cc: Matthew Wilcox (Oracle), linux-mm
Extract the zone number directly from the page instead of using the page's
zone number to look up the zone and asking the zone what its number is.
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
---
mm/memory_hotplug.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/mm/memory_hotplug.c b/mm/memory_hotplug.c
index 0be83039c3b5..80713bdf13dc 100644
--- a/mm/memory_hotplug.c
+++ b/mm/memory_hotplug.c
@@ -2327,7 +2327,7 @@ static int try_offline_memory_block(struct memory_block *mem, void *arg)
* by offlining code ... so we don't care about that.
*/
page = pfn_to_online_page(section_nr_to_pfn(mem->start_section_nr));
- if (page && zone_idx(page_zone(page)) == ZONE_MOVABLE)
+ if (page && page_zonenum(page) == ZONE_MOVABLE)
online_type = MMOP_ONLINE_MOVABLE;
rc = device_offline(&mem->dev);
--
2.47.2
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2025-11-06 20:15 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-11-06 20:14 [PATCH 1/3] hugetlb: Optimise hugetlb_folio_init_tail_vmemmap() Matthew Wilcox (Oracle)
2025-11-06 20:14 ` [PATCH 2/3] migrate: Optimise alloc_migration_target() Matthew Wilcox (Oracle)
2025-11-06 20:14 ` [PATCH 3/3] memory_hotplug: Optimise try_offline_memory_block() Matthew Wilcox (Oracle)
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox