[Devel] [PATCH 00/15] Statistics for vstorage kernel fast-path
Konstantin Khorenko
khorenko at virtuozzo.com
Wed May 22 15:10:32 MSK 2019
On 05/22/2019 11:20 AM, Pavel Butsykin wrote:
> Konstantin,
>
> Pls, rollback these patches I will send v2, this version degrades performance.
Reverted in rh7-3.10.0-957.12.2.vz7.96.3.
>
> 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