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

From: Vlastimil Babka
Date: Tue Aug 10 2021 - 12:01:37 EST


On 7/15/21 5:34 AM, Matthew Wilcox (Oracle) wrote:
> Handle arbitrary-order folios being added to the LRU. By definition,
> all pages being added to the LRU were already head or base pages, but
> call page_folio() on them anyway to get the type right and avoid the
> buried calls to compound_head().
>
> Saves 783 bytes of kernel text; no functions grow.
>
> Signed-off-by: Matthew Wilcox (Oracle) <willy@xxxxxxxxxxxxx>
> Reviewed-by: Yu Zhao <yuzhao@xxxxxxxxxx>
> Reviewed-by: Christoph Hellwig <hch@xxxxxx>
> Reviewed-by: David Howells <dhowells@xxxxxxxxxx>
> Acked-by: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>

Acked-by: Vlastimil Babka <vbabka@xxxxxxx>

Actually looking at the git version, which has also this:

static __always_inline void update_lru_size(struct lruvec *lruvec,
enum lru_list lru, enum zone_type zid,
- int nr_pages)
+ long nr_pages)
{

Why now and here? Some of the functions called from update_lru_size()
still take int so this looks arbitrary?