[Devel] [PATCH 00/15] Statistics for vstorage kernel fast-path
Pavel Butsykin
pbutsykin at virtuozzo.com
Wed May 22 11:20:08 MSK 2019
Konstantin,
Pls, rollback these patches I will send v2, this version degrades performance.
On 17.05.2019 16:20, Pavel Butsykin wrote:
> Vstorage provides plenty of statistics information via 'vstorage -c cl mnt-top',
> but when it comes kernel fast-path, it doesn't work. All because mnt-top
> command collects information from .vstorage.info directory, where vstorage-mount
> provides a lot of different statistical information in the form of files, but
> it was not implemented for for fast-path.
>
> This patch-set is aimed to implementation of the support of some statistics
> inforamtion files from .vstorage.info:
> cs_stats
> fstat
> fstat_lat
> iostat
> requests
> Which will be located at "/sys/fs/fuse/connections/*mnt_id*/kio_stat/". This
> will be enough to maintain vstorage mnt-top command for fast-path mount points.
>
> Pavel Butsykin (15):
> fs/fuse: add conn_ctl to fuse_conn struct
> fs/fuse kio: create sysfs stat directory
> fs/fuse kio: implement iostat
> fs/fuse kio: make common interface pcs_kio_file_list() for listing kio files
> fs/fuse kio: make common interface pcs_kio_req_list() for listing kio reqs
> fs/fuse kio: add retry counter for kio requests
> fs/fuse kio: implement pcs_strerror()
> fs/fuse kio: implement requests statistics
> fs/fuse kio: implement fstat statistics info
> fs/fuse kio: implement fstat_lat statistics info
> fs/fuse kio: remove useless pcs_cs initialization
> fs/fuse kio: implement cs statistics accounting
> fs/fuse kio: convert rpc state id to string
> fs/fuse kio: implement cs_stats statistics info
> fs/fuse kio: add locked cs_get_avg_in_flight()
>
> fs/fuse/Makefile | 3 +-
> fs/fuse/control.c | 5 +-
> fs/fuse/fuse_i.h | 1 +
> fs/fuse/inode.c | 1 +
> fs/fuse/kio/pcs/fuse_stat.c | 715 ++++++++++++++++++++++++++++++++
> fs/fuse/kio/pcs/fuse_stat.h | 80 ++++
> fs/fuse/kio/pcs/pcs_client_types.h | 3 +
> fs/fuse/kio/pcs/pcs_cluster.c | 1 +
> fs/fuse/kio/pcs/pcs_cluster.h | 12 +-
> fs/fuse/kio/pcs/pcs_cluster_core.c | 3 +
> fs/fuse/kio/pcs/pcs_cs.c | 36 +-
> fs/fuse/kio/pcs/pcs_cs.h | 7 +-
> fs/fuse/kio/pcs/pcs_error.h | 83 +++-
> fs/fuse/kio/pcs/pcs_fuse_kdirect.c | 49 ++-
> fs/fuse/kio/pcs/pcs_map.c | 2 +
> fs/fuse/kio/pcs/pcs_perfcounters.h | 64 ++-
> fs/fuse/kio/pcs/pcs_perfcounters_stub.h | 30 --
> fs/fuse/kio/pcs/pcs_req.c | 1 +
> fs/fuse/kio/pcs/pcs_req.h | 10 +
> fs/fuse/kio/pcs/pcs_rpc.c | 23 +
> fs/fuse/kio/pcs/pcs_rpc.h | 2 +
> 21 files changed, 1067 insertions(+), 64 deletions(-)
> create mode 100644 fs/fuse/kio/pcs/fuse_stat.c
> create mode 100644 fs/fuse/kio/pcs/fuse_stat.h
> delete mode 100644 fs/fuse/kio/pcs/pcs_perfcounters_stub.h
>
More information about the Devel
mailing list