[Devel] [PATCH RHEL7 COMMIT] ub: drop swapin/swapout stats

Konstantin Khorenko khorenko at virtuozzo.com
Thu Sep 3 03:34:23 PDT 2015


The commit is pushed to "branch-rh7-3.10.0-229.7.2-ovz" and will appear at https://src.openvz.org/scm/ovz/vzkernel.git
after rh7-3.10.0-229.7.2.vz7.6.6
------>
commit 681603761a5a2c380c8c3c2f2d3c878aa5a267a0
Author: Vladimir Davydov <vdavydov at parallels.com>
Date:   Thu Sep 3 14:34:22 2015 +0400

    ub: drop swapin/swapout stats
    
    Swapin/swapout cannot be accounted by beancounters anymore, because
    memory management moved to memcg. Right now, these stats are not
    provided by memcg, so this patch simply drops them from /proc/vmstat
    inside container and from /proc/bc/CTID/vmaux on the host. If anybody
    requests these counters, they should be reimplemented in the scope of
    memcg and returned back.
    
    https://jira.sw.ru/browse/PSBM-39327
    
    Signed-off-by: Vladimir Davydov <vdavydov at parallels.com>
---
 include/bc/beancounter.h |  6 ------
 kernel/bc/vm_pages.c     | 31 +------------------------------
 2 files changed, 1 insertion(+), 36 deletions(-)

diff --git a/include/bc/beancounter.h b/include/bc/beancounter.h
index 3c32ddf..ec2ba18 100644
--- a/include/bc/beancounter.h
+++ b/include/bc/beancounter.h
@@ -63,12 +63,6 @@ struct ub_percpu_struct {
 	unsigned long fuse_requests;
 	unsigned long fuse_bytes;
 
-	unsigned long swapin;
-	unsigned long swapout;
-
-	unsigned long vswapin;
-	unsigned long vswapout;
-
 #ifdef CONFIG_BC_IO_ACCOUNTING
 	unsigned long async_write_complete;
 	unsigned long async_write_canceled;
diff --git a/kernel/bc/vm_pages.c b/kernel/bc/vm_pages.c
index c52d34f..23e8742 100644
--- a/kernel/bc/vm_pages.c
+++ b/kernel/bc/vm_pages.c
@@ -220,18 +220,7 @@ out:
 
 static int bc_fill_vmstat(struct user_beancounter *ub, unsigned long *stat)
 {
-	int cpu;
-
-	for_each_possible_cpu(cpu) {
-		struct ub_percpu_struct *pcpu = ub_percpu(ub, cpu);
-
-		stat[NR_VM_ZONE_STAT_ITEMS + PSWPIN]	+= pcpu->swapin;
-		stat[NR_VM_ZONE_STAT_ITEMS + PSWPOUT]	+= pcpu->swapout;
-
-		stat[NR_VM_ZONE_STAT_ITEMS + PSWPIN]	+= pcpu->vswapin;
-		stat[NR_VM_ZONE_STAT_ITEMS + PSWPOUT]	+= pcpu->vswapout;
-	}
-
+	/* FIXME: show swapin/swapout? */
 	return NOTIFY_OK;
 }
 
@@ -275,32 +264,14 @@ module_exit(fini_vmguar_notifier);
 static int bc_vmaux_show(struct seq_file *f, void *v)
 {
 	struct user_beancounter *ub;
-	struct ub_percpu_struct *ub_pcpu;
-	unsigned long swapin, swapout, vswapin, vswapout;
-	int i;
 
 	ub = seq_beancounter(f);
 
 	ub_sync_memcg(ub);
 
-	swapin = swapout = vswapin = vswapout = 0;
-	for_each_possible_cpu(i) {
-		ub_pcpu = ub_percpu(ub, i);
-		swapin += ub_pcpu->swapin;
-		swapout += ub_pcpu->swapout;
-		vswapin += ub_pcpu->vswapin;
-		vswapout += ub_pcpu->vswapout;
-	}
-
 	seq_printf(f, bc_proc_lu_fmt, "tmpfs_respages",
 			ub->ub_tmpfs_respages);
 
-	seq_printf(f, bc_proc_lu_fmt, "swapin", swapin);
-	seq_printf(f, bc_proc_lu_fmt, "swapout", swapout);
-
-	seq_printf(f, bc_proc_lu_fmt, "vswapin", vswapin);
-	seq_printf(f, bc_proc_lu_fmt, "vswapout", vswapout);
-
 	seq_printf(f, bc_proc_lu_fmt, "ram", ub->ub_parms[UB_PHYSPAGES].held);
 
 	return 0;



More information about the Devel mailing list