aboutsummaryrefslogtreecommitdiffstats
path: root/block/blk-cgroup.c
diff options
context:
space:
mode:
authorTejun Heo <tj@kernel.org>2019-07-16 10:58:31 -0400
committerJens Axboe <axboe@kernel.dk>2019-07-16 12:06:39 -0400
commit07b0fdecb2477396bcb69609019aade2b22124a1 (patch)
treeb554d081cf839d5d04679b62db42decb4e0cc517 /block/blk-cgroup.c
parentf7b76ac9d17e16e44feebb6d2749fec92bfd6dd4 (diff)
blkcg: allow blkcg_policy->pd_stat() to print non-debug info too
Currently, ->pd_stat() is called only when moduleparam blkcg_debug_stats is set which prevents it from printing non-debug policy-specific statistics. Let's move debug testing down so that ->pd_stat() can print non-debug stat too. This patch doesn't cause any visible behavior change. Signed-off-by: Tejun Heo <tj@kernel.org> Cc: Josef Bacik <josef@toxicpanda.com> Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'block/blk-cgroup.c')
-rw-r--r--block/blk-cgroup.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/block/blk-cgroup.c b/block/blk-cgroup.c
index 24ed26957367..55a7dc227dfb 100644
--- a/block/blk-cgroup.c
+++ b/block/blk-cgroup.c
@@ -54,7 +54,7 @@ static struct blkcg_policy *blkcg_policy[BLKCG_MAX_POLS];
54 54
55static LIST_HEAD(all_blkcgs); /* protected by blkcg_pol_mutex */ 55static LIST_HEAD(all_blkcgs); /* protected by blkcg_pol_mutex */
56 56
57static bool blkcg_debug_stats = false; 57bool blkcg_debug_stats = false;
58static struct workqueue_struct *blkcg_punt_bio_wq; 58static struct workqueue_struct *blkcg_punt_bio_wq;
59 59
60static bool blkcg_policy_enabled(struct request_queue *q, 60static bool blkcg_policy_enabled(struct request_queue *q,
@@ -944,10 +944,7 @@ static int blkcg_print_stat(struct seq_file *sf, void *v)
944 dbytes, dios); 944 dbytes, dios);
945 } 945 }
946 946
947 if (!blkcg_debug_stats) 947 if (blkcg_debug_stats && atomic_read(&blkg->use_delay)) {
948 goto next;
949
950 if (atomic_read(&blkg->use_delay)) {
951 has_stats = true; 948 has_stats = true;
952 off += scnprintf(buf+off, size-off, 949 off += scnprintf(buf+off, size-off,
953 " use_delay=%d delay_nsec=%llu", 950 " use_delay=%d delay_nsec=%llu",
@@ -967,7 +964,7 @@ static int blkcg_print_stat(struct seq_file *sf, void *v)
967 has_stats = true; 964 has_stats = true;
968 off += written; 965 off += written;
969 } 966 }
970next: 967
971 if (has_stats) { 968 if (has_stats) {
972 if (off < size - 1) { 969 if (off < size - 1) {
973 off += scnprintf(buf+off, size-off, "\n"); 970 off += scnprintf(buf+off, size-off, "\n");