On Wed, May 27, 2020 at 01:43:16PM +0200, Vlastimil Babka wrote: > On 5/26/20 11:42 PM, Roman Gushchin wrote: > > In order to prepare for per-object slab memory accounting, convert > > NR_SLAB_RECLAIMABLE and NR_SLAB_UNRECLAIMABLE vmstat items to bytes. > > > > To make it obvious, rename them to NR_SLAB_RECLAIMABLE_B and > > NR_SLAB_UNRECLAIMABLE_B (similar to NR_KERNEL_STACK_KB). > > > > Internally global and per-node counters are stored in pages, > > however memcg and lruvec counters are stored in bytes. > > This scheme may look weird, but only for now. As soon as slab > > pages will be shared between multiple cgroups, global and > > node counters will reflect the total number of slab pages. > > However memcg and lruvec counters will be used for per-memcg > > slab memory tracking, which will take separate kernel objects > > in the account. Keeping global and node counters in pages helps > > to avoid additional overhead. > > > > The size of slab memory shouldn't exceed 4Gb on 32-bit machines, > > so it will fit into atomic_long_t we use for vmstats. > > > > Signed-off-by: Roman Gushchin <guro@xxxxxx> > > You didn't add Acked-by: Johannes Weiner <hannes@xxxxxxxxxxx> > ( see 20200507204137.GC161043@xxxxxxxxxxx ) Indeed. > (Noticed thanks to the great 'b4 am' and 'git range-diff' tools) I'll check them, thanks! > > Reviewed-by: Vlastimil Babka <vbabka@xxxxxxx> > Thank you!