The patch titled Subject: delayacct: fix incomplete disable operation when switch enable to disable has been added to the -mm tree. Its filename is delayacct-fix-incomplete-disable-operation-when-switch-enable-to-disable.patch This patch should soon appear at https://ozlabs.org/~akpm/mmots/broken-out/delayacct-fix-incomplete-disable-operation-when-switch-enable-to-disable.patch and later at https://ozlabs.org/~akpm/mmotm/broken-out/delayacct-fix-incomplete-disable-operation-when-switch-enable-to-disable.patch Before you just go and hit "reply", please: a) Consider who else should be cc'ed b) Prefer to cc a suitable mailing list as well c) Ideally: find the original patch on the mailing list and do a reply-to-all to that, adding suitable additional cc's *** Remember to use Documentation/process/submit-checklist.rst when testing your code *** The -mm tree is included into linux-next and is updated there every 3-4 working days ------------------------------------------------------ From: Yang Yang <yang.yang29@xxxxxxxxxx> Subject: delayacct: fix incomplete disable operation when switch enable to disable When a task is created after delayacct is enabled, kernel will do all the delay accountings for that task. The problems is if user disables delayacct by set /proc/sys/kernel/task_delayacct to zero, only blkio delay accounting is disabled. Now disable all the kinds of delay accountings when /proc/sys/kernel/task_delayacct sets to zero. Link: https://lkml.kernel.org/r/20211123140342.32962-1-ran.xiaokai@xxxxxxxxxx Signed-off-by: Yang Yang <yang.yang29@xxxxxxxxxx> Reported-by: Zeal Robot <zealci@xxxxxxxxxx> Cc: Balbir Singh <bsingharora@xxxxxxxxx> Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx> Cc: Ingo Molnar <mingo@xxxxxxxxxx> Cc: Johannes Weiner <hannes@xxxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- include/linux/delayacct.h | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) --- a/include/linux/delayacct.h~delayacct-fix-incomplete-disable-operation-when-switch-enable-to-disable +++ a/include/linux/delayacct.h @@ -131,36 +131,54 @@ static inline __u64 delayacct_blkio_tick static inline void delayacct_freepages_start(void) { + if (!static_branch_unlikely(&delayacct_key)) + return; + if (current->delays) __delayacct_freepages_start(); } static inline void delayacct_freepages_end(void) { + if (!static_branch_unlikely(&delayacct_key)) + return; + if (current->delays) __delayacct_freepages_end(); } static inline void delayacct_thrashing_start(void) { + if (!static_branch_unlikely(&delayacct_key)) + return; + if (current->delays) __delayacct_thrashing_start(); } static inline void delayacct_thrashing_end(void) { + if (!static_branch_unlikely(&delayacct_key)) + return; + if (current->delays) __delayacct_thrashing_end(); } static inline void delayacct_swapin_start(void) { + if (!static_branch_unlikely(&delayacct_key)) + return; + if (current->delays) __delayacct_swapin_start(); } static inline void delayacct_swapin_end(void) { + if (!static_branch_unlikely(&delayacct_key)) + return; + if (current->delays) __delayacct_swapin_end(); } _ Patches currently in -mm which might be from yang.yang29@xxxxxxxxxx are delayacct-support-swapin-delay-accounting-for-swapping-without-blkio.patch delayacct-fix-incomplete-disable-operation-when-switch-enable-to-disable.patch