summaryrefslogtreecommitdiff
path: root/tools/tracing/rtla/tests/scripts/lib/git@git.tavy.me:linux.git
diff options
context:
space:
mode:
authorChristian Brauner <brauner@kernel.org>2026-07-09 16:23:49 +0200
committerChristian Brauner <brauner@kernel.org>2026-07-31 10:09:07 +0200
commit30248be5702dfb88a3cc14b7e738566aab3c84dd (patch)
tree0b23df27c37d66654fa729ca53ba5a3bffc54e2f /tools/tracing/rtla/tests/scripts/lib/git@git.tavy.me:linux.git
parent8c8fe5c77b604ceb9ce7be1cd5932031f500dda2 (diff)
parent34361f3452f75c3a5c03e597cd71a24461d275cd (diff)
Merge patch series "fs: Move long delayed work on system_dfl_long_wq"
Marco Crivellari <marco.crivellari@suse.com> says: fs: Move long delayed work on system_dfl_long_wq Hello, Currently the code uses the per-cpu workqueue system_long_wq to schedule long running works. Unbound works could benefit from scheduler task placement, to optimize performance and power consumption. Another good reason to have this unbound, is the "queue_delayed_work()" function, used to enqueue the work item. More details on this will follow in the next section. Recently, a new unbound workqueue specific for long running work has been added: c116737e972e ("workqueue: Add system_dfl_long_wq for long unbound works") ~~~ Details about queue_delayed_work ~~~ system_long_wq is a per-cpu workqueue and it is used as a parameter of queue_delayed_work(). This function schedule an item that it will later be enqueued (once the timer will fire). __queue_delayed_work() does the job receiving as "cpu" WORK_CPU_UNBOUND: if (housekeeping_enabled(HK_TYPE_TIMER)) { // [....] } else { if (likely(cpu == WORK_CPU_UNBOUND)) add_timer_global(timer); else add_timer_on(timer, cpu); } The timer is global, so can fire everywhere, and the work item will be enqueued where the timer fired. Since the workqueue work doesn't rely on per-cpu variables, there is no obvious reason that justify the use of a per-cpu workqueue. So change the workqueue with the new system_dfl_long_wq, so that the used workqueue is now unbound and can benefit from scheduler task placement. * patches from https://patch.msgid.link/20260706105443.173697-1-marco.crivellari@suse.com: affs: Move long delayed work on system_dfl_long_wq hfs: Move long delayed work on system_dfl_long_wq hfsplus: Move long delayed work on system_dfl_long_wq fs/jffs2: Move long delayed work on system_dfl_long_wq ufs: Move long delayed work on system_dfl_long_wq Link: https://patch.msgid.link/20260706105443.173697-1-marco.crivellari@suse.com Signed-off-by: Christian Brauner (Amutable) <brauner@kernel.org>
Diffstat (limited to 'tools/tracing/rtla/tests/scripts/lib/git@git.tavy.me:linux.git')
0 files changed, 0 insertions, 0 deletions