Re: [PATCH RFC 07/29] mm/migrate: rename isolate_movable_page() to isolate_movable_ops_page()

From: David Hildenbrand
Date: Mon Jun 23 2025 - 11:38:23 EST


On 18.06.25 20:48, Zi Yan wrote:
On 18 Jun 2025, at 14:39, Matthew Wilcox wrote:

On Wed, Jun 18, 2025 at 02:14:15PM -0400, Zi Yan wrote:
On 18 Jun 2025, at 13:39, David Hildenbrand wrote:

... and start moving back to per-page things that will absolutely not be
folio things in the future. Add documentation and a comment that the
remaining folio stuff (lock, refcount) will have to be reworked as well.

While at it, convert the VM_BUG_ON() into a WARN_ON_ONCE() and handle
it gracefully (relevant with further changes), and convert a
WARN_ON_ONCE() into a VM_WARN_ON_ONCE_PAGE().

The reason is that there is no upstream code, which use movable_ops for
folios? Is there any fundamental reason preventing movable_ops from
being used on folios?

folios either belong to a filesystem or they are anonymous memory, and
so either the filesystem knows how to migrate them (through its a_ops)
or the migration code knows how to handle anon folios directly.

Right, migration of folios will be handled by migration core.


for device private pages, to support migrating >0 order anon or fs folios
to device, how should we represent them for devices? if you think folio is
only for anon and fs.

I assume they are proper folios, so yes. Just like they are handled today (-> folios)

I was asking a related question at LSF/MM in Alistair's session: are we sure these things will be folios even before they are assigned to a filesystem? I recall the answer was "yes".

So we don't (and will not) support movable_ops for folios.

--
Cheers,

David / dhildenb