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: [PATCHv3 0/7] new zram statistics reporting scheme
Date: Fri, 13 Mar 2015 19:29:18 +0900 [thread overview]
Message-ID: <1426242565-2572-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).
v3:
-- show pid and comm in deprecated attr show() functions (Minchan)
v2:
-- fixed a couple of typos noted by Minchan
-- documented obsolete ABI (Minchan)
-- added pr_warn_once() to deprecated sysfs attr functions (Minchan)
Sergey Senozhatsky (7):
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
zram: deprecate zram attrs sysfs nodes
Documentation/ABI/obsolete/sysfs-block-zram | 119 ++++++++++++++++++++++++++++
Documentation/ABI/testing/sysfs-block-zram | 18 ++++-
Documentation/blockdev/zram.txt | 91 +++++++++++++++++----
drivers/block/zram/zram_drv.c | 116 +++++++++++++++++++++------
4 files changed, 303 insertions(+), 41 deletions(-)
create mode 100644 Documentation/ABI/obsolete/sysfs-block-zram
--
2.3.2.223.g7a9409c
next reply other threads:[~2015-03-13 10:29 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-03-13 10:29 Sergey Senozhatsky [this message]
2015-03-13 10:29 ` [PATCHv3 1/7] zram: remove `num_migrated' device attr Sergey Senozhatsky
2015-03-13 10:29 ` [PATCHv3 2/7] zram: move compact_store() to sysfs functions area Sergey Senozhatsky
2015-03-13 10:29 ` [PATCHv3 3/7] zram: use generic start/end io accounting Sergey Senozhatsky
2015-03-13 10:29 ` [PATCHv3 4/7] zram: describe device attrs in documentation Sergey Senozhatsky
2015-03-13 10:29 ` [PATCHv3 5/7] zram: export new 'io_stat' sysfs attrs Sergey Senozhatsky
2015-03-13 10:29 ` [PATCHv3 6/7] zram: export new 'mm_stat' " Sergey Senozhatsky
2015-03-13 10:29 ` [PATCHv3 7/7] zram: deprecate zram attrs sysfs nodes 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=1426242565-2572-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 \
/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
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.