Re: [PATCH RFC v2 17/18] mm: add free_frozen_pages_hint and put_page_hint APIs

From: Michael S. Tsirkin

Date: Tue Apr 21 2026 - 09:17:46 EST


On Tue, Apr 21, 2026 at 12:56:00PM +0200, David Hildenbrand (Arm) wrote:
> On 4/20/26 14:51, Michael S. Tsirkin wrote:
> > Add free_frozen_pages_hint(page, order, hints) to free a page
> > while marking it as pre-zeroed when PGHINT_ZEROED is set.
> > The PG_zeroed flag is set after __free_pages_prepare so it
> > survives on the free list.
> >
> > Add __folio_put_hint(), folio_put_hint(), and put_page_hint()
> > wrappers for the put_page path.
>
> Can we defer that change?

We can - it's a dependency of the balloon deflate, which you asked
me to implement. I'm more interested in reporting, myself.


> Putting a page with a hint, when there might still be other users of the
> page is a weird interface.

The hint is just ignored in this case.

> In the long term, all balloon pages (PG_offline pages) will be frozen
> pages, and definitely not folios.
>
> Frozen pages don't have a refcount.
>
> It would then be sufficient to have the single owner of the page call
> something like free_frozen_zeroed_page().
>
> Now, to convert balloon pages to be frozen requires some more work,
> primarily to balloon migration handling, unfortunately. I have it on my
> todo list, but it will take a while.
>
> --
> Cheers,
>
> David