LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
From: Sergey Senozhatsky <sergey.senozhatsky@gmail.com>
To: Andrew Morton <akpm@linux-foundation.org>,
	Minchan Kim <minchan@kernel.org>
Cc: Nitin Gupta <ngupta@vflare.org>,
	linux-kernel@vger.kernel.org,
	Sergey Senozhatsky <sergey.senozhatsky.work@gmail.com>,
	Sergey Senozhatsky <sergey.senozhatsky@gmail.com>
Subject: [PATCH 0/6] new zram statistics reporting scheme
Date: Wed, 11 Mar 2015 00:08:28 +0900	[thread overview]
Message-ID: <1426000114-4471-1-git-send-email-sergey.senozhatsky@gmail.com> (raw)

Hello,

This patch introduces rework to zram stats. We have per-stat sysfs
nodes, and it makes things a bit hard to use in user space: it doesn't
give an immediate stats 'snapshot', it requires user space to use
more syscals -- open, read, close for every stat file, with 
appropriate error checks on every step, etc.

First, zram now accounts block layer statistics. available in
/sys/block/zram<id>/stat and /proc/diskstats files. So some new
stats are available (see Documentation/block/stat.txt), besides,
zram's activities are now can be monitored by sysstat's iostat
or similar tools.

Example:
cat /sys/block/zram0/stat
248     0    1984    0   251029     0  2008232   5120   0   5116   5116



Second, group currently exported on per-stat basis nodes into two
categories (files):

-- zram<id>/io_stat
accumulates device's IO stats, that are not accounted by block layer,
and contains:
        failed_reads
        failed_writes
        invalid_io
        notify_free

Example:
cat /sys/block/zram0/io_stat
0        0        0   652572


-- zram<id>/mm_stat
accumulates zram mm stats and contains:
        orig_data_size
        compr_data_size
        mem_used_total
        mem_limit
        mem_used_max
        zero_pages
        num_migrated

Example:
cat /sys/block/zram0/mm_stat
434634752 270288572 279158784        0 579895296    15060        0


per-stat sysfs nodes are now considered to be deprecated and we plan
to remove them (and clean up some of the existing stat code) in two
years (as of now, there is no warning printed to syslog about deprecated
stats being used). user space is advised to use the above mentioned 3
files.


note:
util-linux mailing list is not Cc-ed into this series. once we settle
it down, I'll write to Karel. (we have several months ahead until 4.1
will be released).


Sergey Senozhatsky (6):
  zram: remove `num_migrated' device attr
  zram: move compact_store() to sysfs functions area
  zram: use generic start/end io accounting
  zram: describe device attrs in documentation
  zram: export new 'io_stat' sysfs attrs
  zram: export new 'mm_stat' sysfs attrs

 Documentation/ABI/testing/sysfs-block-zram |  18 +++--
 Documentation/blockdev/zram.txt            |  79 ++++++++++++++++++----
 drivers/block/zram/zram_drv.c              | 101 ++++++++++++++++++++++-------
 3 files changed, 157 insertions(+), 41 deletions(-)

-- 
2.3.2.209.gd67f9d5


             reply	other threads:[~2015-03-10 15:08 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-03-10 15:08 Sergey Senozhatsky [this message]
2015-03-10 15:08 ` [PATCH 1/6] zram: remove `num_migrated' device attr Sergey Senozhatsky
2015-03-12  1:16   ` Minchan Kim
2015-03-12  1:22     ` Sergey Senozhatsky
2015-03-10 15:08 ` [PATCH 2/6] zram: move compact_store() to sysfs functions area Sergey Senozhatsky
2015-03-12  1:24   ` Minchan Kim
2015-03-10 15:08 ` [PATCH 3/6] zram: use generic start/end io accounting Sergey Senozhatsky
2015-03-12  1:25   ` Minchan Kim
2015-03-10 15:08 ` [PATCH 4/6] zram: describe device attrs in documentation Sergey Senozhatsky
2015-03-12  1:33   ` Minchan Kim
2015-03-12  1:47     ` Sergey Senozhatsky
2015-03-10 15:08 ` [PATCH 5/6] zram: export new 'io_stat' sysfs attrs Sergey Senozhatsky
2015-03-12  1:36   ` Minchan Kim
2015-03-10 15:08 ` [PATCH 6/6] zram: export new 'mm_stat' " Sergey Senozhatsky
2015-03-12  1:41   ` Minchan Kim
2015-03-12  1:54     ` Sergey Senozhatsky
2015-03-12  1:55 ` [PATCH 0/6] new zram statistics reporting scheme Minchan Kim
2015-03-12  2:16   ` Sergey Senozhatsky
2015-03-12  5:03     ` Sergey Senozhatsky
2015-03-12  5:11     ` Minchan Kim
2015-03-12  5:24       ` Sergey Senozhatsky

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1426000114-4471-1-git-send-email-sergey.senozhatsky@gmail.com \
    --to=sergey.senozhatsky@gmail.com \
    --cc=akpm@linux-foundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=minchan@kernel.org \
    --cc=ngupta@vflare.org \
    --cc=sergey.senozhatsky.work@gmail.com \
    --subject='Re: [PATCH 0/6] new zram statistics reporting scheme' \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).