On 13.09.25 01:14, Balbir Singh wrote:
On 9/12/25 19:20, David Hildenbrand wrote:
On 12.09.25 06:49, Balbir Singh wrote:
On 9/11/25 22:52, David Hildenbrand wrote:
On 11.09.25 14:49, Balbir Singh wrote:
On 9/11/25 21:45, David Hildenbrand wrote:
On 08.09.25 02:04, Balbir Singh wrote:
Add routines to support allocation of large order zone device folios
and helper functions for zone device folios, to check if a folio is
device private and helpers for setting zone device data.

When large folios are used, the existing page_free() callback in
pgmap is called when the folio is freed, this is true for both
PAGE_SIZE and higher order pages.

Zone device private large folios do not support deferred split and
scan like normal THP folios.

Cc: Andrew Morton <[email protected]>
Cc: David Hildenbrand <[email protected]>
Cc: Zi Yan <[email protected]>
Cc: Joshua Hahn <[email protected]>
Cc: Rakie Kim <[email protected]>
Cc: Byungchul Park <[email protected]>
Cc: Gregory Price <[email protected]>
Cc: Ying Huang <[email protected]>
Cc: Alistair Popple <[email protected]>
Cc: Oscar Salvador <[email protected]>
Cc: Lorenzo Stoakes <[email protected]>
Cc: Baolin Wang <[email protected]>
Cc: "Liam R. Howlett" <[email protected]>
Cc: Nico Pache <[email protected]>
Cc: Ryan Roberts <[email protected]>
Cc: Dev Jain <[email protected]>
Cc: Barry Song <[email protected]>
Cc: Lyude Paul <[email protected]>
Cc: Danilo Krummrich <[email protected]>
Cc: David Airlie <[email protected]>
Cc: Simona Vetter <[email protected]>
Cc: Ralph Campbell <[email protected]>
Cc: Mika Penttilä <[email protected]>
Cc: Matthew Brost <[email protected]>
Cc: Francois Dugast <[email protected]>

Signed-off-by: Balbir Singh <[email protected]>
---

You missed my comments of this patch in v3.


Hi, David

Looks I missed your comments, just checked those were largely about alignment 
and
integrating the code for DEVICE_COHERENT and DEVICE_PRIVATE cases into similar 
looking
bits for zone device folio free and code-alignment. I'll take a look and update 
as needed.

Yes, and the confusing folio->mapping = NULL that I cannot connect to THP 
support.


I can remove that, let me reunify those bits, seems relatively straight forward

BTW, I was wondering when we invalidate folio_test_anon() by clearing 
folio->mapping int he current code flow?

I mean, this must happen at some point when freeing device folios.


The free_zone_device_folio() code does that. Lines 434 onwards there is a 
comment that explains it

Ah okay. So it's not required at all in your case because MEMORY_DEVICE_PRIVATE is handled through

        if (pgmap->type != MEMORY_DEVICE_FS_DAX &&
            pgmap->type != MEMORY_DEVICE_GENERIC)
                folio->mapping = NULL;


You using "folio->page.mapping" instead of "folio->mapping" added a bit more confusion :)

--
Cheers

David / dhildenb

Reply via email to