]> git.ipfire.org Git - thirdparty/linux.git/commit
Merge patch series "Fix vm.dirtytime_expire_seconds=0 causing 100% CPU"
authorChristian Brauner <brauner@kernel.org>
Mon, 12 Jan 2026 10:07:30 +0000 (11:07 +0100)
committerChristian Brauner <brauner@kernel.org>
Mon, 12 Jan 2026 10:07:30 +0000 (11:07 +0100)
commite16688084df76e719b329a1a56b338ec491002e0
tree963f1ef602c5429bd97e53a2a17fabc5c83798c7
parentc644bce62b9c6b441143a03c910f986109c47001
parent30ef9a20f1fdf6ab483d64fe3d54ba7d07b9b46f
Merge patch series "Fix vm.dirtytime_expire_seconds=0 causing 100% CPU"

Laveesh Bansal <laveeshb@laveeshbansal.com> says:

Setting vm.dirtytime_expire_seconds to 0 causes wakeup_dirtytime_writeback()
to reschedule itself with a delay of 0, creating an infinite busy loop that
spins kworker at 100% CPU.

This series:
- Patch 1: Fixes the bug by handling interval=0 as "disable writeback"
           (consistent with dirty_writeback_centisecs behavior)
- Patch 2: Documents that setting the value to 0 disables writeback

Tested by booting kernels in QEMU with virtme-ng:
- Buggy kernel: kworker CPU spikes to ~73% when interval set to 0
- Fixed kernel: CPU remains normal, writeback correctly disabled
- Re-enabling (0 -> non-zero): writeback resumes correctly

* patches from https://patch.msgid.link/20260106145059.543282-1-laveeshb@laveeshbansal.com:
  docs: clarify that dirtytime_expire_seconds=0 disables writeback
  writeback: fix 100% CPU usage when dirtytime_expire_interval is 0

Link: https://patch.msgid.link/20260106145059.543282-1-laveeshb@laveeshbansal.com
Signed-off-by: Christian Brauner <brauner@kernel.org>