[PATCH v1 20/23] mm/kconfig: make BALLOON_COMPACTION depend on MIGRATION
David Hildenbrand
david at redhat.com
Wed Oct 22 05:43:08 AEDT 2025
On 21.10.25 19:13, Randy Dunlap wrote:
>
>
> On 10/21/25 8:00 AM, David Hildenbrand wrote:
>> 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.
>>
>> Signed-off-by: David Hildenbrand <david at redhat.com>
>> ---
>> mm/Kconfig | 17 +++++++----------
>> 1 file changed, 7 insertions(+), 10 deletions(-)
>>
>> diff --git a/mm/Kconfig b/mm/Kconfig
>> index e47321051d765..3aff4d05a2d8c 100644
>> --- a/mm/Kconfig
>> +++ b/mm/Kconfig
>> @@ -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 get
>
> nit:
> s/get/be/
Thanks!
--
Cheers
David / dhildenb
More information about the Linuxppc-dev
mailing list