[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <B94EE1C1-ED99-4A11-AC6D-9342C89AB450@nvidia.com>
Date: Sun, 25 May 2025 21:33:59 -0400
From: Zi Yan <ziy@...dia.com>
To: David Hildenbrand <david@...hat.com>,
Johannes Weiner <hannes@...xchg.org>, <linux-mm@...ck.org>
Cc: Andrew Morton <akpm@...ux-foundation.org>,
Oscar Salvador <osalvador@...e.de>, Vlastimil Babka <vbabka@...e.cz>,
Baolin Wang <baolin.wang@...ux.alibaba.com>,
"Kirill A . Shutemov" <kirill.shutemov@...ux.intel.com>,
Mel Gorman <mgorman@...hsingularity.net>,
Suren Baghdasaryan <surenb@...gle.com>, Michal Hocko <mhocko@...e.com>,
Brendan Jackman <jackmanb@...gle.com>, Richard Chang <richardycc@...gle.com>,
<linux-kernel@...r.kernel.org>, Zi Yan <ziy@...dia.com>
Subject: Re: [PATCH v5 6/6] mm/page_isolation: remove migratetype parameter
from more functions.
On 23 May 2025, at 15:12, Zi Yan wrote:
> migratetype is no longer overwritten during pageblock isolation,
> start_isolate_page_range(), has_unmovable_pages(), and
> set_migratetype_isolate() no longer need which migratetype to restore
> during isolation failure.
>
> For has_unmoable_pages(), it needs to know if the isolation is for CMA
> allocation, so adding CMA_ALLOCATION to provide the information. At the
> same time change isolation flags to enum pb_isolate_mode (MEMORY_OFFLINE,
> CMA_ALLOCATION, and ISOLATE_MODE_OTHERS). Remove REPORT_FAILURE and check
> MEMORY_OFFLINE instead, since only MEMORY_OFFLINE reports isolation
> failures.
>
> alloc_contig_range() no longer needs migratetype. Replace it with
> a newly defined acr_flags_t to tell if an allocation is for CMA. So does
> __alloc_contig_migrate_range().
>
> Signed-off-by: Zi Yan <ziy@...dia.com>
> ---
> drivers/virtio/virtio_mem.c | 3 +-
> include/linux/gfp.h | 6 ++-
> include/linux/page-isolation.h | 19 ++++++++--
> include/trace/events/kmem.h | 14 ++++---
> mm/cma.c | 2 +-
> mm/memory_hotplug.c | 4 +-
> mm/page_alloc.c | 25 ++++++-------
> mm/page_isolation.c | 67 +++++++++++++++-------------------
> 8 files changed, 72 insertions(+), 68 deletions(-)
This fixes mode's wrong type.
From 0c9792cd7ad1d1cd16b276b70d972e5b871ff653 Mon Sep 17 00:00:00 2001
From: Zi Yan <ziy@...dia.com>
Date: Sun, 25 May 2025 21:29:06 -0400
Subject: [PATCH] fix mode's type.
Signed-off-by: Zi Yan <ziy@...dia.com>
---
mm/page_alloc.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/mm/page_alloc.c b/mm/page_alloc.c
index 48f458f7143a..3096304d1b58 100644
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -6901,8 +6901,8 @@ int alloc_contig_range_noprof(unsigned long start, unsigned long end,
};
INIT_LIST_HEAD(&cc.migratepages);
bool is_range_aligned;
- isolate_mode_t mode = (alloc_flags & ACR_CMA) ? CMA_ALLOCATION :
- ISOLATE_MODE_OTHERS;
+ enum pb_isolate_mode mode =
+ (alloc_flags & ACR_CMA) ? CMA_ALLOCATION : ISOLATE_MODE_OTHERS;
gfp_mask = current_gfp_context(gfp_mask);
if (__alloc_contig_verify_gfp_mask(gfp_mask, (gfp_t *)&cc.gfp_mask))
--
2.47.2
--
Best Regards,
Yan, Zi
Powered by blists - more mailing lists