Re: [PATCH v14 011/138] mm/lru: Add folio LRU functions

From: Matthew Wilcox
Date: Wed Jul 21 2021 - 07:39:03 EST


On Wed, Jul 21, 2021 at 11:39:15AM +0300, Mike Rapoport wrote:
> On Wed, Jul 21, 2021 at 05:08:44AM +0100, Matthew Wilcox wrote:
> > I wanted to turn those last two sentences into a list, but my
> > kernel-doc-fu abandoned me. Feel free to submit a follow-on patch to
> > fix that ;-)
>
> Here it is ;-)

Did you try it? Here's what that turns into with htmldoc:

Description

We would like to get this info without a page flag, but the state needs
to survive until the folio is last deleted from the LRU, which could be
as far down as __page_cache_release.

* 1 if folio is a regular filesystem backed page cache folio or a
lazily freed anonymous folio (e.g. via MADV_FREE).
* 0 if folio is a normal anonymous folio, a tmpfs folio or otherwise
ram or swap backed folio.

Return

An integer (not a boolean!) used to sort a folio onto the right LRU list
and to account folios correctly.

Yes, we get a bulleted list, but it's placed in the wrong section!

Adding linux-doc for additional insight into this problem.
For their reference, here's the input:

/**
* folio_is_file_lru - Should the folio be on a file LRU or anon LRU?
* @folio: The folio to test.
*
* We would like to get this info without a page flag, but the state
* needs to survive until the folio is last deleted from the LRU, which
* could be as far down as __page_cache_release.
*
* Return: An integer (not a boolean!) used to sort a folio onto the
* right LRU list and to account folios correctly.
*
* - 1 if @folio is a regular filesystem backed page cache folio
* or a lazily freed anonymous folio (e.g. via MADV_FREE).
* - 0 if @folio is a normal anonymous folio, a tmpfs folio or otherwise
* ram or swap backed folio.
*/
static inline int folio_is_file_lru(struct folio *folio)