[PATCH RFC 01/29] mm/balloon_compaction: we cannot have isolated pages in the balloon list

David Hildenbrand posted 29 patches 3 months, 3 weeks ago
There is a newer version of this series
[PATCH RFC 01/29] mm/balloon_compaction: we cannot have isolated pages in the balloon list
Posted by David Hildenbrand 3 months, 3 weeks ago
The core will set PG_isolated only after mops->isolate_page() was
called. In case of the balloon, that is where we will remove it from
the balloon list. So we cannot have isolated pages in the balloon list.

Let's drop this unnecessary check.

Signed-off-by: David Hildenbrand <david@redhat.com>
---
 mm/balloon_compaction.c | 6 ------
 1 file changed, 6 deletions(-)

diff --git a/mm/balloon_compaction.c b/mm/balloon_compaction.c
index d3e00731e2628..fcb60233aa35d 100644
--- a/mm/balloon_compaction.c
+++ b/mm/balloon_compaction.c
@@ -94,12 +94,6 @@ size_t balloon_page_list_dequeue(struct balloon_dev_info *b_dev_info,
 		if (!trylock_page(page))
 			continue;
 
-		if (IS_ENABLED(CONFIG_BALLOON_COMPACTION) &&
-		    PageIsolated(page)) {
-			/* raced with isolation */
-			unlock_page(page);
-			continue;
-		}
 		balloon_page_delete(page);
 		__count_vm_event(BALLOON_DEFLATE);
 		list_add(&page->lru, pages);
-- 
2.49.0
Re: [PATCH RFC 01/29] mm/balloon_compaction: we cannot have isolated pages in the balloon list
Posted by Zi Yan 3 months, 3 weeks ago
On 18 Jun 2025, at 13:39, David Hildenbrand wrote:

> The core will set PG_isolated only after mops->isolate_page() was
> called. In case of the balloon, that is where we will remove it from
> the balloon list. So we cannot have isolated pages in the balloon list.
>
> Let's drop this unnecessary check.
>
> Signed-off-by: David Hildenbrand <david@redhat.com>
> ---
>  mm/balloon_compaction.c | 6 ------
>  1 file changed, 6 deletions(-)
>

Acked-by: Zi Yan <ziy@nvidia.com>

Best Regards,
Yan, Zi