Re: [PATCH v4 03/25] mm/vmstat: Add functions to account folio statistics
From: Andrew Morton <akpm@linux-foundation.org>
Date: 2021-03-13 20:38:11
Also in:
linux-fsdevel, lkml
From: Andrew Morton <akpm@linux-foundation.org>
Date: 2021-03-13 20:38:11
Also in:
linux-fsdevel, lkml
On Fri, 5 Mar 2021 04:18:39 +0000 "Matthew Wilcox (Oracle)" [off-list ref] wrote:
Allow page counters to be more readily modified by callers which have a folio. Name these wrappers with 'stat' instead of 'state' as requested by Linus here: https://lore.kernel.org/linux-mm/CAHk-=wj847SudR-kt+46fT3+xFFgiwpgThvm7DJWGdi4cVrbnQ@mail.gmail.com/ (local)--- a/include/linux/vmstat.h +++ b/include/linux/vmstat.h@@ -402,6 +402,54 @@ static inline void drain_zonestat(struct zone *zone, struct per_cpu_pageset *pset) { } #endif /* CONFIG_SMP */ +static inline +void __inc_zone_folio_stat(struct folio *folio, enum zone_stat_item item) +{ + __mod_zone_page_state(folio_zone(folio), item, folio_nr_pages(folio)); +}
The naming is unfortunate. We expect inc: add one to dec: subtract one from mod: modify by signed quantity So these are inconsistent. Perhaps use "add" and "sub" instead. At least to alert people to the fact that these are different. And, again, it's nice to see the subsystem's name leading the identifiers, so "zone_folio_stat_add()".