Re: [PATCH v2 1/3] mm: document zone device struct page field usage

From: Ralph Campbell
Date: Tue Jul 23 2019 - 17:25:51 EST



On 7/22/19 4:08 AM, Matthew Wilcox wrote:
On Sun, Jul 21, 2019 at 10:13:45PM -0700, Ira Weiny wrote:
On Sun, Jul 21, 2019 at 09:02:04AM -0700, Matthew Wilcox wrote:
On Fri, Jul 19, 2019 at 12:29:53PM -0700, Ralph Campbell wrote:
Struct page for ZONE_DEVICE private pages uses the page->mapping and
and page->index fields while the source anonymous pages are migrated to
device private memory. This is so rmap_walk() can find the page when
migrating the ZONE_DEVICE private page back to system memory.
ZONE_DEVICE pmem backed fsdax pages also use the page->mapping and
page->index fields when files are mapped into a process address space.

Restructure struct page and add comments to make this more clear.

NAK. I just got rid of this kind of foolishness from struct page,
and you're making it harder to understand, not easier. The comments
could be improved, but don't lay it out like this again.

Was V1 of Ralphs patch ok? It seemed ok to me.

Yes, v1 was fine. This seems like a regression.


This is about what people find "easiest to understand" and so
I'm not surprised that opinions differ.
What if I post a v3 based on v1 but remove the _zd_pad_* variables
that Christoph found misleading and add some more comments
about how the different ZONE_DEVICE types use the 3 remaining
words (basically the comment from v2)?