summaryrefslogtreecommitdiffstats
path: root/xlators/performance/quick-read
diff options
context:
space:
mode:
Diffstat (limited to 'xlators/performance/quick-read')
-rw-r--r--xlators/performance/quick-read/src/quick-read.c24
1 files changed, 24 insertions, 0 deletions
diff --git a/xlators/performance/quick-read/src/quick-read.c b/xlators/performance/quick-read/src/quick-read.c
index 70ef8858f1b..696e628e314 100644
--- a/xlators/performance/quick-read/src/quick-read.c
+++ b/xlators/performance/quick-read/src/quick-read.c
@@ -2343,6 +2343,11 @@ qr_priv_dump (xlator_t *this)
char key[GF_DUMP_MAX_BUF_LEN];
char key_prefix[GF_DUMP_MAX_BUF_LEN];
qr_private_t *priv = NULL;
+ qr_inode_table_t *table = NULL;
+ uint32_t file_count = 0;
+ uint32_t i = 0;
+ qr_inode_t *curr = NULL;
+
if (!this)
return -1;
@@ -2356,6 +2361,9 @@ qr_priv_dump (xlator_t *this)
return -1;
}
+ table = &priv->table;
+
+
gf_proc_dump_build_key (key_prefix,
"xlator.performance.quick-read",
"priv");
@@ -2367,6 +2375,22 @@ qr_priv_dump (xlator_t *this)
gf_proc_dump_build_key (key, key_prefix, "cache_timeout");
gf_proc_dump_write (key, "%d", conf->cache_timeout);
+ if (!table) {
+ gf_log (this->name, GF_LOG_WARNING,
+ "table is NULL");
+ goto out;
+ } else {
+ for (i = 0; i > conf->max_pri; i++) {
+ list_for_each_entry (curr, &table->lru[i], lru) {
+ file_count++;
+ }
+ }
+ }
+
+ gf_proc_dump_build_key (key, key_prefix, "total_files_cached");
+ gf_proc_dump_write (key, "%d", file_count);
+
+out:
return 0;
}