scoutfs: add counters for server commits

Add some counters for server commits.

Signed-off-by: Zach Brown <zab@versity.com>
This commit is contained in:
Zach Brown
2020-05-12 16:56:06 -07:00
committed by Zach Brown
parent e6ae397d12
commit 4d0b78f5cb
2 changed files with 10 additions and 0 deletions

View File

@@ -105,6 +105,10 @@
EXPAND_COUNTER(radix_merge_empty) \
EXPAND_COUNTER(radix_undo_ref) \
EXPAND_COUNTER(radix_walk) \
EXPAND_COUNTER(server_commit_hold) \
EXPAND_COUNTER(server_commit_prepare) \
EXPAND_COUNTER(server_commit_queue) \
EXPAND_COUNTER(server_commit_worker) \
EXPAND_COUNTER(trans_commit_data_alloc_low) \
EXPAND_COUNTER(trans_commit_fsync) \
EXPAND_COUNTER(trans_commit_full) \

View File

@@ -139,6 +139,8 @@ int scoutfs_server_hold_commit(struct super_block *sb)
u64 tot;
int ret = 0;
scoutfs_inc_counter(sb, server_commit_hold);
down_read(&server->commit_rwsem);
while (!server->prepared_commit) {
@@ -146,6 +148,7 @@ int scoutfs_server_hold_commit(struct super_block *sb)
down_write(&server->commit_rwsem);
if (!server->prepared_commit) {
scoutfs_inc_counter(sb, server_commit_prepare);
BUG_ON(scoutfs_block_writer_dirty_bytes(sb,
&server->wri));
tot = le64_to_cpu(super->core_meta_freed.ref.sm_total);
@@ -196,6 +199,7 @@ int scoutfs_server_apply_commit(struct super_block *sb, int err)
cw.ret = 0;
init_completion(&cw.comp);
llist_add(&cw.node, &server->commit_waiters);
scoutfs_inc_counter(sb, server_commit_queue);
queue_work(server->wq, &server->commit_work);
}
@@ -277,9 +281,11 @@ static void scoutfs_server_commit_func(struct work_struct *work)
int ret;
trace_scoutfs_server_commit_work_enter(sb, 0, 0);
scoutfs_inc_counter(sb, server_commit_worker);
down_write(&server->commit_rwsem);
ret = scoutfs_block_writer_write(sb, &server->wri);
if (ret) {
scoutfs_err(sb, "server error writing btree blocks: %d", ret);