The patch titled memcg: no uncharged pages reach page_cgroup_zoneinfo has been removed from the -mm tree. Its filename was memcg-no-uncharged-pages-reach-page_cgroup_zoneinfo.patch This patch was dropped because it was merged into mainline or a subsystem tree The current -mm tree may be found at http://userweb.kernel.org/~akpm/mmotm/ ------------------------------------------------------ Subject: memcg: no uncharged pages reach page_cgroup_zoneinfo From: Johannes Weiner <hannes@xxxxxxxxxxx> This patch series removes the direct page pointer from struct page_cgroup, which saves 20% of per-page memcg memory overhead (Fedora and Ubuntu enable memcg per default, openSUSE apparently too). The node id or section number is encoded in the remaining free bits of pc->flags which allows calculating the corresponding page without the extra pointer. I ran, what I think is, a worst-case microbenchmark that just cats a large sparse file to /dev/null, because it means that walking the LRU list on behalf of per-cgroup reclaim and looking up pages from page_cgroups is happening constantly and at a high rate. But it made no measurable difference. A profile reported a 0.11% share of the new lookup_cgroup_page() function in this benchmark. This patch: All callsites check PCG_USED before passing pc->mem_cgroup, so the latter is never NULL. Signed-off-by: Johannes Weiner <hannes@xxxxxxxxxxx> Acked-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@xxxxxxxxxxxxxx> Cc: Daisuke Nishimura <nishimura@xxxxxxxxxxxxxxxxx> Acked-by: Balbir Singh <balbir@xxxxxxxxxxxxxxxxxx> Cc: Minchan Kim <minchan.kim@xxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- mm/memcontrol.c | 3 --- 1 file changed, 3 deletions(-) diff -puN mm/memcontrol.c~memcg-no-uncharged-pages-reach-page_cgroup_zoneinfo mm/memcontrol.c --- a/mm/memcontrol.c~memcg-no-uncharged-pages-reach-page_cgroup_zoneinfo +++ a/mm/memcontrol.c @@ -370,9 +370,6 @@ page_cgroup_zoneinfo(struct page_cgroup int nid = page_cgroup_nid(pc); int zid = page_cgroup_zid(pc); - if (!mem) - return NULL; - return mem_cgroup_zoneinfo(mem, nid, zid); } _ Patches currently in -mm which might be from hannes@xxxxxxxxxxx are origin.patch mm-add-vm-counters-for-transparent-hugepages.patch mm-batch-activate_page-to-reduce-lock-contention.patch memcg-document-cgroup-dirty-memory-interfaces.patch memcg-add-page_cgroup-flags-for-dirty-page-tracking.patch memcg-add-dirty-page-accounting-infrastructure.patch memcg-add-kernel-calls-for-memcg-dirty-page-stats.patch memcg-add-dirty-limits-to-mem_cgroup.patch memcg-add-cgroupfs-interface-to-memcg-dirty-limits.patch memcg-add-dirty-limiting-routines.patch memcg-check-memcg-dirty-limits-in-page-writeback.patch memcg-make-background-writeback-memcg-aware.patch -- To unsubscribe from this list: send the line "unsubscribe mm-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html