Hi Sergey,

On Wed, Mar 11, 2015 at 12:08:28AM +0900, Sergey Senozhatsky wrote:
> 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).

I really appreciate you enhance stat functions, esp, working with iostat!

One thing I want to discuss is sometime we could remove RO fields
in /sys/block/zram/ but we couldn't remove RW fields because
io_stat/mm_stat doesn't have any writable option now so users will
have two options to read stat. For exmaple,

        cat /sys/block/zram/mem_used_max
        cat /sys/block/zram/mm_stat | awk friend

How about changing only writeable, not readable for duplicated stats
in /sys/block/zram? So, user will have writeable stat to set some
options in /sys/block/zram and readable stat to get some data in
/sys/block/zram/[io|mm]_stat if the stat is duplicated in both.


-- 
Kind regards,
Minchan Kim
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to