]> asedeno.scripts.mit.edu Git - linux.git/blobdiff - block/bfq-cgroup.c
blk-cgroup: pass blkg_rwstat structures by reference
[linux.git] / block / bfq-cgroup.c
index b3796a40a61a29e1de205a70dd7d516c95892630..66abc82179f38cb9fc34c2fdf320f0c3b470c885 100644 (file)
@@ -935,9 +935,9 @@ static u64 bfqg_prfill_stat_recursive(struct seq_file *sf,
 static u64 bfqg_prfill_rwstat_recursive(struct seq_file *sf,
                                        struct blkg_policy_data *pd, int off)
 {
-       struct blkg_rwstat sum = blkg_rwstat_recursive_sum(pd_to_blkg(pd),
-                                                          &blkcg_policy_bfq,
-                                                          off);
+       struct blkg_rwstat sum;
+
+       blkg_rwstat_recursive_sum(pd_to_blkg(pd), &blkcg_policy_bfq, off, &sum);
        return __blkg_prfill_rwstat(sf, pd, &sum);
 }
 
@@ -975,9 +975,12 @@ static int bfqg_print_stat_sectors(struct seq_file *sf, void *v)
 static u64 bfqg_prfill_sectors_recursive(struct seq_file *sf,
                                         struct blkg_policy_data *pd, int off)
 {
-       struct blkg_rwstat tmp = blkg_rwstat_recursive_sum(pd->blkg, NULL,
-                                       offsetof(struct blkcg_gq, stat_bytes));
-       u64 sum = atomic64_read(&tmp.aux_cnt[BLKG_RWSTAT_READ]) +
+       struct blkg_rwstat tmp;
+       u64 sum;
+
+       blkg_rwstat_recursive_sum(pd->blkg, NULL,
+                       offsetof(struct blkcg_gq, stat_bytes), &tmp);
+       sum = atomic64_read(&tmp.aux_cnt[BLKG_RWSTAT_READ]) +
                atomic64_read(&tmp.aux_cnt[BLKG_RWSTAT_WRITE]);
 
        return __blkg_prfill_u64(sf, pd, sum >> 9);