On Fri, 2 May 2014 19:29:08 -0400 Johannes Weiner [off-list ref] wrote:
Memcg zoneinfo lookup sites have either the page, the zone, or the
node id and zone index, but sites that only have the zone have to look
up the node id and zone index themselves, whereas sites that already
have those two integers use a function for a simple pointer chase.
Provide mem_cgroup_zone_zoneinfo() that takes a zone pointer and let
sites that already have node id and zone index - all for each node,
for each zone iterators - use &memcg->nodeinfo[nid]->zoneinfo[zid].
Rename page_cgroup_zoneinfo() to mem_cgroup_page_zoneinfo() to match.
Patch shrinks my mm/memcontrol.o nicely:
text data bss dec hex filename
55702 15681 24560 95943 176c7 mm/memcontrol.o-before
55489 15681 24464 95634 17592 mm/memcontrol.o-after
The bss size changes are weird - the patch doesn't touch bss afaict.
This often happens. One day I'll get in there and work out why.