delayacct-improve-the-average-delay-precision-of-getdelay-tool-to-microsecond.patch removed from -mm tree
The quilt patch titled
Subject: delayacct: improve the average delay precision of getdelay tool to microsecond
has been removed from the -mm tree. Its filename was
delayacct-improve-the-average-delay-precision-of-getdelay-tool-to-microsecond.patch
This patch was dropped because it was merged into the mm-nonmm-stable branch of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm
------------------------------------------------------
From: Wang Yong <[email protected]>
Subject: delayacct: improve the average delay precision of getdelay tool to microsecond
Date: Mon, 13 Feb 2023 14:08:08 +0800 (CST)
Improve the average delay precision of getdelay tool to microsecond. When using the getdelay tool, it is sometimes found that the average delay except CPU is not 0, but display is 0, because the precison is too low. For example, see delay average of SWAP below when using ZRAM.
print delayacct stats ON
PID 32915
CPU count real total virtual total delay total delay average
339202 2793871936 9233585504 7951112 0.000ms
IO count delay total delay average
41 419296904 10ms
SWAP count delay total delay average
242589 1045792384 0msThis wrong display is misleading, so improve the millisecond precision of the average delay to microsecond just like CPU. Then user would get more accurate information of delay time.
---
Documentation/accounting/delay-accounting.rst | 14 ++--- Documentation/translations/zh_CN/accounting/delay-accounting.rst | 10 ++-- tools/accounting/getdelays.c | 24 +++++----- 3 files changed, 24 insertions(+), 24 deletions(-)
Documentation/accounting/delay-accounting.rst renamed from Documentation/accounting/delay-accounting.rst~delayacct-improve-the-average-delay-precision-of-getdelay-tool-to-microsecond +7 -7
@@ -109,17 +109,17 @@ Get sum of delays, since system boot, fo CPU count real total virtual total delay total delay average 8 7000000 6872122 3382277 0.423ms IO count delay total delay average - 0 0 0ms + 0 0 0.000ms SWAP count delay total delay average - 0 0 0ms + 0 0 0.000ms RECLAIM count delay total delay average - 0 0 0ms + 0 0 0.000ms THRASHING count delay total delay average - 0 0 0ms + 0 0 0.000ms COMPACT count delay total delay average - 0 0 0ms - WPCOPY count delay total delay average - 0 0 0ms + 0 0 0.000ms + WPCOPY count delay total delay average + 0 0 0.000ms Get IO accounting for pid 1, it works only with -p::
Documentation/translations/zh_CN/accounting/delay-accounting.rst renamed from Documentation/translations/zh_CN/accounting/delay-accounting.rst~delayacct-improve-the-average-delay-precision-of-getdelay-tool-to-microsecond +5 -5
@@ -92,15 +92,15 @@ 获取所有tgid为5的任务从系统� CPU count real total virtual total delay total delay average 8 7000000 6872122 3382277 0.423ms IO count delay total delay average - 0 0 0ms + 0 0 0.000ms SWAP count delay total delay average - 0 0 0ms + 0 0 0.000ms RECLAIM count delay total delay average - 0 0 0ms + 0 0 0.000ms THRASHING count delay total delay average - 0 0 0ms + 0 0 0.000ms COMPACT count delay total delay average - 0 0 0ms + 0 0 0.000ms WPCOPY count delay total delay average 0 0 0ms
tools/accounting/getdelays.c renamed from tools/accounting/getdelays.c~delayacct-improve-the-average-delay-precision-of-getdelay-tool-to-microsecond +12 -12
@@ -198,17 +198,17 @@ static void print_delayacct(struct tasks 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" + " %15llu%15llu%15.3fms\n" "SWAP %15s%15s%15s\n" - " %15llu%15llu%15llums\n" + " %15llu%15llu%15.3fms\n" "RECLAIM %12s%15s%15s\n" - " %15llu%15llu%15llums\n" + " %15llu%15llu%15.3fms\n" "THRASHING%12s%15s%15s\n" - " %15llu%15llu%15llums\n" + " %15llu%15llu%15.3fms\n" "COMPACT %12s%15s%15s\n" - " %15llu%15llu%15llums\n" + " %15llu%15llu%15.3fms\n" "WPCOPY %12s%15s%15s\n" - " %15llu%15llu%15llums\n", + " %15llu%15llu%15.3fms\n", "count", "real total", "virtual total", "delay total", "delay average", (unsigned long long)t->cpu_count,
@@ -219,27 +219,27 @@ static void print_delayacct(struct tasks"count" ,"delay total" ,"delay average" , (unsigned long long )t->blkio_count, (unsigned long long )t->blkio_delay_total, -average_ms (t->blkio_delay_total, t->blkio_count), +average_ms ((double )t->blkio_delay_total, t->blkio_count),"count" ,"delay total" ,"delay average" , (unsigned long long )t->swapin_count, (unsigned long long )t->swapin_delay_total, -average_ms (t->swapin_delay_total, t->swapin_count), +average_ms ((double )t->swapin_delay_total, t->swapin_count),"count" ,"delay total" ,"delay average" , (unsigned long long )t->freepages_count, (unsigned long long )t->freepages_delay_total, -average_ms (t->freepages_delay_total, t->freepages_count), +average_ms ((double )t->freepages_delay_total, t->freepages_count),"count" ,"delay total" ,"delay average" , (unsigned long long )t->thrashing_count, (unsigned long long )t->thrashing_delay_total, -average_ms (t->thrashing_delay_total, t->thrashing_count), +average_ms ((double )t->thrashing_delay_total, t->thrashing_count),"count" ,"delay total" ,"delay average" , (unsigned long long )t->compact_count, (unsigned long long )t->compact_delay_total, -average_ms (t->compact_delay_total, t->compact_count), +average_ms ((double )t->compact_delay_total, t->compact_count),"count" ,"delay total" ,"delay average" , (unsigned long long )t->wpcopy_count, (unsigned long long )t->wpcopy_delay_total, - average_ms(t->wpcopy_delay_total, t->wpcopy_count)); + average_ms((double)t->wpcopy_delay_total, t->wpcopy_count)); }static void task_context_switch_counts (struct taskstats *t)
_
Patches currently in -mm which might be from [email protected] are