With this patch, getdelays shows maximum delay which it gets from kernel via taskstats interface. Output example: (on 100 concurrent dd reading sparse files with 1 dd writing a file) CPU count real total virtual total delay total delay_max delay average 234 61990576 78703354 543649 138417 0.002ms IO count delay total delay max delay average 16 184774999 61259321 11ms SWAP count delay total delay max delay average 0 0 0 0ms RECLAIM count delay total delay_max delay average 20 4249456 381288 0ms Signed-off-by: Satoru Moriya <satoru.moriya@xxxxxxx> --- Documentation/accounting/getdelays.c | 28 ++++++++++++++++------------ 1 files changed, 16 insertions(+), 12 deletions(-) diff --git a/Documentation/accounting/getdelays.c b/Documentation/accounting/getdelays.c index f6318f6..69d3ec4 100644 --- a/Documentation/accounting/getdelays.c +++ b/Documentation/accounting/getdelays.c @@ -197,32 +197,36 @@ static int get_family_id(int sd) static void print_delayacct(struct taskstats *t) { - printf("\n\nCPU %15s%15s%15s%15s%15s\n" - " %15llu%15llu%15llu%15llu%15.3fms\n" - "IO %15s%15s%15s\n" - " %15llu%15llu%15llums\n" - "SWAP %15s%15s%15s\n" - " %15llu%15llu%15llums\n" - "RECLAIM %12s%15s%15s\n" - " %15llu%15llu%15llums\n", + printf("\n\nCPU %15s%15s%15s%15s%15s%15s\n" + " %15llu%15llu%15llu%15llu%15llu%15.3fms\n" + "IO %15s%15s%15s%15s\n" + " %15llu%15llu%15llu%15llums\n" + "SWAP %15s%15s%15s%15s\n" + " %15llu%15llu%15llu%15llums\n" + "RECLAIM %12s%15s%15s%15s\n" + " %15llu%15llu%15llu%15llums\n", "count", "real total", "virtual total", - "delay total", "delay average", + "delay total", "delay_max", "delay average", (unsigned long long)t->cpu_count, (unsigned long long)t->cpu_run_real_total, (unsigned long long)t->cpu_run_virtual_total, (unsigned long long)t->cpu_delay_total, + (unsigned long long)t->cpu_delay_max, average_ms((double)t->cpu_delay_total, t->cpu_count), - "count", "delay total", "delay average", + "count", "delay total", "delay max", "delay average", (unsigned long long)t->blkio_count, (unsigned long long)t->blkio_delay_total, + (unsigned long long)t->blkio_delay_max, average_ms(t->blkio_delay_total, t->blkio_count), - "count", "delay total", "delay average", + "count", "delay total", "delay max", "delay average", (unsigned long long)t->swapin_count, (unsigned long long)t->swapin_delay_total, + (unsigned long long)t->swapin_delay_max, average_ms(t->swapin_delay_total, t->swapin_count), - "count", "delay total", "delay average", + "count", "delay total", "delay_max", "delay average", (unsigned long long)t->freepages_count, (unsigned long long)t->freepages_delay_total, + (unsigned long long)t->freepages_delay_max, average_ms(t->freepages_delay_total, t->freepages_count)); } -- 1.7.6.4 -- To unsubscribe from this list: send the line "unsubscribe linux-doc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html