aboutsummaryrefslogtreecommitdiffstats
path: root/tools/perf/scripts/python/intel-pt-events.py
diff options
context:
space:
mode:
authorRoman Gushchin <[email protected]>2019-08-13 22:37:41 +0000
committerLinus Torvalds <[email protected]>2019-08-13 23:06:52 +0000
commitec9f02384f6053f2a5417e82b65078edc5364a8d (patch)
tree18f6d560869e620c21dacd71353f235c6a13f00a /tools/perf/scripts/python/intel-pt-events.py
parentmm/usercopy: use memory range to be accessed for wraparound check (diff)
downloadkernel-ec9f02384f6053f2a5417e82b65078edc5364a8d.tar.gz
kernel-ec9f02384f6053f2a5417e82b65078edc5364a8d.zip
mm: workingset: fix vmstat counters for shadow nodes
Memcg counters for shadow nodes are broken because the memcg pointer is obtained in a wrong way. The following approach is used: virt_to_page(xa_node)->mem_cgroup Since commit 4d96ba353075 ("mm: memcg/slab: stop setting page->mem_cgroup pointer for slab pages") page->mem_cgroup pointer isn't set for slab pages, so memcg_from_slab_page() should be used instead. Also I doubt that it ever worked correctly: virt_to_head_page() should be used instead of virt_to_page(). Otherwise objects residing on tail pages are not accounted, because only the head page contains a valid mem_cgroup pointer. That was a case since the introduction of these counters by the commit 68d48e6a2df5 ("mm: workingset: add vmstat counter for shadow nodes"). Link: http://lkml.kernel.org/r/[email protected] Fixes: 4d96ba353075 ("mm: memcg/slab: stop setting page->mem_cgroup pointer for slab pages") Signed-off-by: Roman Gushchin <[email protected]> Acked-by: Johannes Weiner <[email protected]> Cc: Vladimir Davydov <[email protected]> Cc: Shakeel Butt <[email protected]> Cc: Michal Hocko <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
Diffstat (limited to 'tools/perf/scripts/python/intel-pt-events.py')
0 files changed, 0 insertions, 0 deletions