[Devel] [PATCH rh7 2/5] ub: drop swapin/swapout stats
Vladimir Davydov
vdavydov at parallels.com
Mon Aug 31 02:17:37 PDT 2015
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.
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 a4131e11c15c..0534c205967a 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 c52d34f377b5..23e874237206 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;
--
2.1.4
More information about the Devel
mailing list