From mboxrd@z Thu Jan 1 00:00:00 1970 From: Wanpeng Li Subject: [PATCH 4/6] memcg: move recent_rotated and recent_scanned informations Date: Sat, 23 Jun 2012 14:17:39 +0800 Message-ID: <1340432259-5317-1-git-send-email-liwp.linux@gmail.com> Return-path: DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:cc:subject:date:message-id:x-mailer; bh=dYUk+hNDmpVOiaNjD+p1mbABtOpzlTwMuJIuFb9a+qU=; b=zqzAhAnV1HXv++mdLb9tLnpt7xyLYVAM/iywdjAS0OC2/YPxHrZolxhBFsA4dTXJwL eNjaGMLzKVxQIvoO/M8eW1HO/vDfSfsOGbUN/0hXTLxIQ/ege5bt5I91zW1hRBBa/XQ8 M3XNDImXj96V/+atQuogwF8ohXs4hovBc9CfgALsLkomUvRlf+W617iY1CrGIU1XrvBX l/qk+2EbPHisJDVzIE4/doC608YCrOQ/csJ1kYe82gJNx+m+RojFEaPsKhNgpEpSke55 8E0WoNiThrSffWyk7fNCo1BbaaPTKnjB+THYzdwy7WCrgW3NQKfBBGrbrEF1OcNj9DVU YJbQ== Sender: cgroups-owner-u79uwXL29TY76Z2rM5mHXA@public.gmane.org List-ID: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: linux-mm-Bw31MaZKKs3YtjvyW6yDsg@public.gmane.org Cc: Michal Hocko , Johannes Weiner , Balbir Singh , KAMEZAWA Hiroyuki , Andrew Morton , Mel Gorman , Minchan Kim , linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, cgroups-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Gavin Shan , Wanpeng Li From: Wanpeng Li Move recent_rotated and recent_scanned prints next to inactive_anon, ative_anon, inactive_file, active_file, and unevictable prints to save developers' time. Since they have to go a long way(when cat memory.stat) to find recent_rotated and recent_scanned prints which has relationship with the memory cgroup we care. These prints are behind total_* which not just focus on the memory cgroup we care currently. Signed-off-by: Wanpeng Li --- mm/memcontrol.c | 50 +++++++++++++++++++++++++------------------------- 1 file changed, 25 insertions(+), 25 deletions(-) diff --git a/mm/memcontrol.c b/mm/memcontrol.c index 2e81328..c821e36 100644 --- a/mm/memcontrol.c +++ b/mm/memcontrol.c @@ -4080,6 +4080,31 @@ static int mem_cgroup_stat_show(struct cgroup *cont, struct cftype *cft, seq_printf(m, "%s %lu\n", mem_cgroup_lru_names[i], mem_cgroup_nr_lru_pages(memcg, BIT(i)) * PAGE_SIZE); +#ifdef CONFIG_DEBUG_VM + { + int nid, zid; + struct mem_cgroup_per_zone *mz; + struct zone_reclaim_stat *rstat; + unsigned long recent_rotated[2] = {0, 0}; + unsigned long recent_scanned[2] = {0, 0}; + + for_each_online_node(nid) + for (zid = 0; zid < MAX_NR_ZONES; zid++) { + mz = mem_cgroup_zoneinfo(memcg, nid, zid); + rstat = &mz->lruvec.reclaim_stat; + + recent_rotated[0] += rstat->recent_rotated[0]; + recent_rotated[1] += rstat->recent_rotated[1]; + recent_scanned[0] += rstat->recent_scanned[0]; + recent_scanned[1] += rstat->recent_scanned[1]; + } + seq_printf(m, "recent_rotated_anon %lu\n", recent_rotated[0]); + seq_printf(m, "recent_rotated_file %lu\n", recent_rotated[1]); + seq_printf(m, "recent_scanned_anon %lu\n", recent_scanned[0]); + seq_printf(m, "recent_scanned_file %lu\n", recent_scanned[1]); + } +#endif + /* Hierarchical information */ { unsigned long long limit, memsw_limit; @@ -4117,31 +4142,6 @@ static int mem_cgroup_stat_show(struct cgroup *cont, struct cftype *cft, seq_printf(m, "total_%s %llu\n", mem_cgroup_lru_names[i], val); } -#ifdef CONFIG_DEBUG_VM - { - int nid, zid; - struct mem_cgroup_per_zone *mz; - struct zone_reclaim_stat *rstat; - unsigned long recent_rotated[2] = {0, 0}; - unsigned long recent_scanned[2] = {0, 0}; - - for_each_online_node(nid) - for (zid = 0; zid < MAX_NR_ZONES; zid++) { - mz = mem_cgroup_zoneinfo(memcg, nid, zid); - rstat = &mz->lruvec.reclaim_stat; - - recent_rotated[0] += rstat->recent_rotated[0]; - recent_rotated[1] += rstat->recent_rotated[1]; - recent_scanned[0] += rstat->recent_scanned[0]; - recent_scanned[1] += rstat->recent_scanned[1]; - } - seq_printf(m, "recent_rotated_anon %lu\n", recent_rotated[0]); - seq_printf(m, "recent_rotated_file %lu\n", recent_rotated[1]); - seq_printf(m, "recent_scanned_anon %lu\n", recent_scanned[0]); - seq_printf(m, "recent_scanned_file %lu\n", recent_scanned[1]); - } -#endif - return 0; } -- 1.7.9.5 From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from psmtp.com (na3sys010amx103.postini.com [74.125.245.103]) by kanga.kvack.org (Postfix) with SMTP id 5FD6B6B029D for ; Sat, 23 Jun 2012 02:17:54 -0400 (EDT) Received: by dakp5 with SMTP id p5so3916562dak.14 for ; Fri, 22 Jun 2012 23:17:53 -0700 (PDT) From: Wanpeng Li Subject: [PATCH 4/6] memcg: move recent_rotated and recent_scanned informations Date: Sat, 23 Jun 2012 14:17:39 +0800 Message-Id: <1340432259-5317-1-git-send-email-liwp.linux@gmail.com> Sender: owner-linux-mm@kvack.org List-ID: To: linux-mm@kvack.org Cc: Michal Hocko , Johannes Weiner , Balbir Singh , KAMEZAWA Hiroyuki , Andrew Morton , Mel Gorman , Minchan Kim , linux-kernel@vger.kernel.org, cgroups@vger.kernel.org, Gavin Shan , Wanpeng Li From: Wanpeng Li Move recent_rotated and recent_scanned prints next to inactive_anon, ative_anon, inactive_file, active_file, and unevictable prints to save developers' time. Since they have to go a long way(when cat memory.stat) to find recent_rotated and recent_scanned prints which has relationship with the memory cgroup we care. These prints are behind total_* which not just focus on the memory cgroup we care currently. Signed-off-by: Wanpeng Li --- mm/memcontrol.c | 50 +++++++++++++++++++++++++------------------------- 1 file changed, 25 insertions(+), 25 deletions(-) diff --git a/mm/memcontrol.c b/mm/memcontrol.c index 2e81328..c821e36 100644 --- a/mm/memcontrol.c +++ b/mm/memcontrol.c @@ -4080,6 +4080,31 @@ static int mem_cgroup_stat_show(struct cgroup *cont, struct cftype *cft, seq_printf(m, "%s %lu\n", mem_cgroup_lru_names[i], mem_cgroup_nr_lru_pages(memcg, BIT(i)) * PAGE_SIZE); +#ifdef CONFIG_DEBUG_VM + { + int nid, zid; + struct mem_cgroup_per_zone *mz; + struct zone_reclaim_stat *rstat; + unsigned long recent_rotated[2] = {0, 0}; + unsigned long recent_scanned[2] = {0, 0}; + + for_each_online_node(nid) + for (zid = 0; zid < MAX_NR_ZONES; zid++) { + mz = mem_cgroup_zoneinfo(memcg, nid, zid); + rstat = &mz->lruvec.reclaim_stat; + + recent_rotated[0] += rstat->recent_rotated[0]; + recent_rotated[1] += rstat->recent_rotated[1]; + recent_scanned[0] += rstat->recent_scanned[0]; + recent_scanned[1] += rstat->recent_scanned[1]; + } + seq_printf(m, "recent_rotated_anon %lu\n", recent_rotated[0]); + seq_printf(m, "recent_rotated_file %lu\n", recent_rotated[1]); + seq_printf(m, "recent_scanned_anon %lu\n", recent_scanned[0]); + seq_printf(m, "recent_scanned_file %lu\n", recent_scanned[1]); + } +#endif + /* Hierarchical information */ { unsigned long long limit, memsw_limit; @@ -4117,31 +4142,6 @@ static int mem_cgroup_stat_show(struct cgroup *cont, struct cftype *cft, seq_printf(m, "total_%s %llu\n", mem_cgroup_lru_names[i], val); } -#ifdef CONFIG_DEBUG_VM - { - int nid, zid; - struct mem_cgroup_per_zone *mz; - struct zone_reclaim_stat *rstat; - unsigned long recent_rotated[2] = {0, 0}; - unsigned long recent_scanned[2] = {0, 0}; - - for_each_online_node(nid) - for (zid = 0; zid < MAX_NR_ZONES; zid++) { - mz = mem_cgroup_zoneinfo(memcg, nid, zid); - rstat = &mz->lruvec.reclaim_stat; - - recent_rotated[0] += rstat->recent_rotated[0]; - recent_rotated[1] += rstat->recent_rotated[1]; - recent_scanned[0] += rstat->recent_scanned[0]; - recent_scanned[1] += rstat->recent_scanned[1]; - } - seq_printf(m, "recent_rotated_anon %lu\n", recent_rotated[0]); - seq_printf(m, "recent_rotated_file %lu\n", recent_rotated[1]); - seq_printf(m, "recent_scanned_anon %lu\n", recent_scanned[0]); - seq_printf(m, "recent_scanned_file %lu\n", recent_scanned[1]); - } -#endif - return 0; } -- 1.7.9.5 -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: email@kvack.org From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755594Ab2FWGRz (ORCPT ); Sat, 23 Jun 2012 02:17:55 -0400 Received: from mail-pb0-f46.google.com ([209.85.160.46]:44418 "EHLO mail-pb0-f46.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754001Ab2FWGRx (ORCPT ); Sat, 23 Jun 2012 02:17:53 -0400 From: Wanpeng Li To: linux-mm@kvack.org Cc: Michal Hocko , Johannes Weiner , Balbir Singh , KAMEZAWA Hiroyuki , Andrew Morton , Mel Gorman , Minchan Kim , linux-kernel@vger.kernel.org, cgroups@vger.kernel.org, Gavin Shan , Wanpeng Li Subject: [PATCH 4/6] memcg: move recent_rotated and recent_scanned informations Date: Sat, 23 Jun 2012 14:17:39 +0800 Message-Id: <1340432259-5317-1-git-send-email-liwp.linux@gmail.com> X-Mailer: git-send-email 1.7.9.5 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Wanpeng Li Move recent_rotated and recent_scanned prints next to inactive_anon, ative_anon, inactive_file, active_file, and unevictable prints to save developers' time. Since they have to go a long way(when cat memory.stat) to find recent_rotated and recent_scanned prints which has relationship with the memory cgroup we care. These prints are behind total_* which not just focus on the memory cgroup we care currently. Signed-off-by: Wanpeng Li --- mm/memcontrol.c | 50 +++++++++++++++++++++++++------------------------- 1 file changed, 25 insertions(+), 25 deletions(-) diff --git a/mm/memcontrol.c b/mm/memcontrol.c index 2e81328..c821e36 100644 --- a/mm/memcontrol.c +++ b/mm/memcontrol.c @@ -4080,6 +4080,31 @@ static int mem_cgroup_stat_show(struct cgroup *cont, struct cftype *cft, seq_printf(m, "%s %lu\n", mem_cgroup_lru_names[i], mem_cgroup_nr_lru_pages(memcg, BIT(i)) * PAGE_SIZE); +#ifdef CONFIG_DEBUG_VM + { + int nid, zid; + struct mem_cgroup_per_zone *mz; + struct zone_reclaim_stat *rstat; + unsigned long recent_rotated[2] = {0, 0}; + unsigned long recent_scanned[2] = {0, 0}; + + for_each_online_node(nid) + for (zid = 0; zid < MAX_NR_ZONES; zid++) { + mz = mem_cgroup_zoneinfo(memcg, nid, zid); + rstat = &mz->lruvec.reclaim_stat; + + recent_rotated[0] += rstat->recent_rotated[0]; + recent_rotated[1] += rstat->recent_rotated[1]; + recent_scanned[0] += rstat->recent_scanned[0]; + recent_scanned[1] += rstat->recent_scanned[1]; + } + seq_printf(m, "recent_rotated_anon %lu\n", recent_rotated[0]); + seq_printf(m, "recent_rotated_file %lu\n", recent_rotated[1]); + seq_printf(m, "recent_scanned_anon %lu\n", recent_scanned[0]); + seq_printf(m, "recent_scanned_file %lu\n", recent_scanned[1]); + } +#endif + /* Hierarchical information */ { unsigned long long limit, memsw_limit; @@ -4117,31 +4142,6 @@ static int mem_cgroup_stat_show(struct cgroup *cont, struct cftype *cft, seq_printf(m, "total_%s %llu\n", mem_cgroup_lru_names[i], val); } -#ifdef CONFIG_DEBUG_VM - { - int nid, zid; - struct mem_cgroup_per_zone *mz; - struct zone_reclaim_stat *rstat; - unsigned long recent_rotated[2] = {0, 0}; - unsigned long recent_scanned[2] = {0, 0}; - - for_each_online_node(nid) - for (zid = 0; zid < MAX_NR_ZONES; zid++) { - mz = mem_cgroup_zoneinfo(memcg, nid, zid); - rstat = &mz->lruvec.reclaim_stat; - - recent_rotated[0] += rstat->recent_rotated[0]; - recent_rotated[1] += rstat->recent_rotated[1]; - recent_scanned[0] += rstat->recent_scanned[0]; - recent_scanned[1] += rstat->recent_scanned[1]; - } - seq_printf(m, "recent_rotated_anon %lu\n", recent_rotated[0]); - seq_printf(m, "recent_rotated_file %lu\n", recent_rotated[1]); - seq_printf(m, "recent_scanned_anon %lu\n", recent_scanned[0]); - seq_printf(m, "recent_scanned_file %lu\n", recent_scanned[1]); - } -#endif - return 0; } -- 1.7.9.5