[PATCH v1 27/29] docs/mm: convert from "Non-LRU page migration" to "movable_ops page migration"

Harry Yoo harry.yoo at oracle.com
Thu Jul 3 00:23:22 AEST 2025


On Mon, Jun 30, 2025 at 03:00:08PM +0200, David Hildenbrand wrote:
> Let's bring the docs up-to-date.
> 
> Reviewed-by: Zi Yan <ziy at nvidia.com>
> Signed-off-by: David Hildenbrand <david at redhat.com>
> ---
>
> +movable_ops page migration
> +==========================
> +
> +Selected typed, non-folio pages (e.g., pages inflated in a memory balloon,
> +zsmalloc pages) can be migrated using the movable_ops migration framework.
> +
> +The "struct movable_operations" provide callbacks specific to a page type
> +for isolating, migrating and un-isolating (putback) these pages.
> +
> +Once a page is indicated as having movable_ops, that condition must not
> +change until the page was freed back to the buddy. This includes not
> +changing/clearing the page type and not changing/clearing the
> +PG_movable_ops page flag.
> +
> +Arbitrary drivers cannot currently make use of this framework, as it
> +requires:
> +
> +(a) a page type
> +(b) indicating them as possibly having movable_ops in page_has_movable_ops()
> +    based on the page type

> +(c) returning the movable_ops from page_has_movable_ops() based on the page
> +    type

I think you meant page_movable_ops()?

Otherwise LGTM :)
Reviewed-by: Harry Yoo <harry.yoo at oracle.com>

> +(d) not reusing the PG_movable_ops and PG_movable_ops_isolated page flags
> +    for other purposes
> +
> +For example, balloon drivers can make use of this framework through the
> +balloon-compaction infrastructure residing in the core kernel.

-- 
Cheers,
Harry / Hyeonggon


More information about the Linuxppc-dev mailing list