Re: [PATCH v4 02/28] mm: Add an unlock function for PG_private_2/PG_fscache

From: David Howells
Date: Mon Mar 22 2021 - 06:57:34 EST


Matthew Wilcox <willy@xxxxxxxxxxxxx> wrote:

> That also brings up that there is no set_page_private_2(). I think
> that's OK -- you only set PageFsCache() immediately after reading the
> page from the server. But I feel this "unlock_page_private_2" is actually
> "clear_page_private_2" -- ie it's equivalent to writeback, not to lock.

How about I do the following:

(1) Add set_page_private_2() or mark_page_private_2() to set the PG_fscache_2
bit. It could take a ref on the page here.

(2) Rename unlock_page_private_2() to end_page_private_2(). It could drop
the ref on the page here, but that then means I can't use
pagevec_release().

(3) Add wait_on_page_private_2() an analogue of wait_on_page_writeback()
rather than wait_on_page_locked().

(4) Provide fscache synonyms of the above.

David