-static void show_agg_stats(struct disk_util_agg *agg, int terse)
-{
- if (!agg->slavecount)
- return;
-
- if (!terse) {
- log_info(", aggrios=%u/%u, aggrmerge=%u/%u, aggrticks=%u/%u,"
- " aggrin_queue=%u, aggrutil=%3.2f%%",
- agg->ios[0] / agg->slavecount,
- agg->ios[1] / agg->slavecount,
- agg->merges[0] / agg->slavecount,
- agg->merges[1] / agg->slavecount,
- agg->ticks[0] / agg->slavecount,
- agg->ticks[1] / agg->slavecount,
- agg->time_in_queue / agg->slavecount,
- agg->max_util.u.f);
- } else {
- log_info(";slaves;%u;%u;%u;%u;%u;%u;%u;%3.2f%%",
- agg->ios[0] / agg->slavecount,
- agg->ios[1] / agg->slavecount,
- agg->merges[0] / agg->slavecount,
- agg->merges[1] / agg->slavecount,
- agg->ticks[0] / agg->slavecount,
- agg->ticks[1] / agg->slavecount,
- agg->time_in_queue / agg->slavecount,
- agg->max_util.u.f);
- }
-}
-
-static void aggregate_slaves_stats(struct disk_util *masterdu)
-{
- struct disk_util_agg *agg = &masterdu->agg;
- struct disk_util_stat *dus;
- struct flist_head *entry;
- struct disk_util *slavedu;
- double util;
-
- flist_for_each(entry, &masterdu->slaves) {
- slavedu = flist_entry(entry, struct disk_util, slavelist);
- dus = &slavedu->dus;
- agg->ios[0] += dus->ios[0];
- agg->ios[1] += dus->ios[1];
- agg->merges[0] += dus->merges[0];
- agg->merges[1] += dus->merges[1];
- agg->sectors[0] += dus->sectors[0];
- agg->sectors[1] += dus->sectors[1];
- agg->ticks[0] += dus->ticks[0];
- agg->ticks[1] += dus->ticks[1];
- agg->time_in_queue += dus->time_in_queue;
- agg->slavecount++;
-
- util = (double) (100 * dus->io_ticks / (double) slavedu->dus.msec);
- /* System utilization is the utilization of the
- * component with the highest utilization.
- */
- if (util > agg->max_util.u.f)
- agg->max_util.u.f = util;
-
- }
-
- if (agg->max_util.u.f > 100.0)
- agg->max_util.u.f = 100.0;
-}
-
-void free_disk_util(void)