Re: [PATCH RFC 0/6] Allow file-backed or shared device private pages

From: Alistair Popple
Date: Thu Mar 27 2025 - 10:50:11 EST


On Wed, Mar 26, 2025 at 02:14:59AM +0000, Matthew Wilcox wrote:
> On Sun, Mar 16, 2025 at 11:04:07PM -0700, Christoph Hellwig wrote:
> > On Sun, Mar 16, 2025 at 03:29:23PM +1100, Alistair Popple wrote:
> > > This series lifts that restriction by allowing ZONE_DEVICE private pages to
> > > exist in the pagecache.
> >
> > You'd better provide a really good argument for why we'd even want
> > to do that. So far this cover letter fails to do that.
>
> Alistair and I discussed this during his session at LSFMM today.
> Here's what I think we agreed to.

Thanks for writing up this summary.

>
> The use case is a file containing a potentially very large data set.
> Some phases of processing that data set are best done on the GPU, other
> phases on the CPU. We agreed that shared writable mmap was not actually
> needed (it might need to be supported for correctness, but it's not a
> performance requirement).

Right. I agree we don't currently have a good usecase for writeback so the next
revision will definitely only support read-only access.

> So, there's no need to put DEVICE_PRIVATE pages in the page cache.
> Instead the GPU will take a copy of the page(s). We agreed that there
> will have to be some indication (probably a folio flag?) that the GPU has
> or may have a copy of (some of) the folio so that it can be invalidated
> if the page is removed due to truncation / eviction.
>
> Alistair, let me know if that's not what you think we agreed to ;-)

That all looks about right. I think the flag/indication is a good idea and is
probably the best solution, but I will need to write the code to truely convince
myself of that :-)