2022-02-08 11:33:14

by Ralph Campbell

[permalink] [raw]
Subject: Re: [PATCH 7/8] mm: remove the extra ZONE_DEVICE struct page refcount

On 2/6/22 22:32, Christoph Hellwig wrote:
> ZONE_DEVICE struct pages have an extra reference count that complicates
> the code for put_page() and several places in the kernel that need to
> check the reference count to see that a page is not being used (gup,
> compaction, migration, etc.). Clean up the code so the reference count
> doesn't need to be treated specially for ZONE_DEVICE pages.
>
> Note that this excludes the special idle page wakeup for fsdax pages,
> which still happens at refcount 1. This is a separate issue and will
> be sorted out later. Given that only fsdax pages require the
> notifiacation when the refcount hits 1 now, the PAGEMAP_OPS Kconfig
> symbol can go away and be replaced with a FS_DAX check for this hook
> in the put_page fastpath.
>
> Based on an earlier patch from Ralph Campbell <[email protected]>.
>
> Signed-off-by: Christoph Hellwig <[email protected]>

Thanks for working on this, definite step forward.

Reviewed-by: Ralph Campbell <[email protected]>