]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
mm/kconfig: make BALLOON_COMPACTION depend on MIGRATION
authorDavid Hildenbrand (Red Hat) <david@kernel.org>
Mon, 19 Jan 2026 23:01:29 +0000 (00:01 +0100)
committerAndrew Morton <akpm@linux-foundation.org>
Sat, 31 Jan 2026 22:22:35 +0000 (14:22 -0800)
Migration support for balloon memory depends on MIGRATION not COMPACTION.
Compaction is simply another user of page migration.

The last dependency on compaction.c was effectively removed with commit
3d388584d599 ("mm: convert "movable" flag in page->mapping to a page
flag").  Ever since, everything for handling movable_ops page migration
resides in core migration code.

So let's change the dependency and adjust the description + help text.

We'll rename BALLOON_COMPACTION separately next.

Link: https://lkml.kernel.org/r/20260119230133.3551867-22-david@kernel.org
Signed-off-by: David Hildenbrand (Red Hat) <david@kernel.org>
Reviewed-by: Lorenzo Stoakes <lorenzo.stoakes@oracle.com>
Acked-by: Michael S. Tsirkin <mst@redhat.com>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Christophe Leroy <christophe.leroy@csgroup.eu>
Cc: Eugenio Pérez <eperezma@redhat.com>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Jason Wang <jasowang@redhat.com>
Cc: Jerrin Shaji George <jerrin.shaji-george@broadcom.com>
Cc: Jonathan Corbet <corbet@lwn.net>
Cc: Liam Howlett <liam.howlett@oracle.com>
Cc: Madhavan Srinivasan <maddy@linux.ibm.com>
Cc: Michael Ellerman <mpe@ellerman.id.au>
Cc: Michal Hocko <mhocko@suse.com>
Cc: Mike Rapoport <rppt@kernel.org>
Cc: Nicholas Piggin <npiggin@gmail.com>
Cc: Oscar Salvador <osalvador@suse.de>
Cc: SeongJae Park <sj@kernel.org>
Cc: Suren Baghdasaryan <surenb@google.com>
Cc: Vlastimil Babka <vbabka@suse.cz>
Cc: Xuan Zhuo <xuanzhuo@linux.alibaba.com>
Cc: Zi Yan <ziy@nvidia.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
mm/Kconfig

index 5f4d6e5b5715903b169bb6f3cc4f7b59e346c73e..c5374f3cf1c81dacab00c083fca04d6bf9255ccb 100644 (file)
@@ -599,17 +599,14 @@ config MEMORY_BALLOON
 #
 # support for memory balloon compaction
 config BALLOON_COMPACTION
-       bool "Allow for balloon memory compaction/migration"
+       bool "Allow for balloon memory migration"
        default y
-       depends on COMPACTION && MEMORY_BALLOON
-       help
-         Memory fragmentation introduced by ballooning might reduce
-         significantly the number of 2MB contiguous memory blocks that can be
-         used within a guest, thus imposing performance penalties associated
-         with the reduced number of transparent huge pages that could be used
-         by the guest workload. Allowing the compaction & migration for memory
-         pages enlisted as being part of memory balloon devices avoids the
-         scenario aforementioned and helps improving memory defragmentation.
+       depends on MIGRATION && MEMORY_BALLOON
+       help
+         Allow for migration of pages inflated in a memory balloon such that
+         they can be allocated from memory areas only available for movable
+         allocations (e.g., ZONE_MOVABLE, CMA) and such that they can be
+         migrated for memory defragmentation purposes by memory compaction.
 
 #
 # support for memory compaction