Skip to content

RFC swait: add idle to make idle-hacks on kthreads explicit

Luis R. Rodriguez lkml 1 version In review

Get series with b4
b4 am [email protected]

Versions newest first

  1. v2 RFC Latest2 patches 9 repliesIn review

Patches in v2 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/2swait: add idle variants which don't contribute to load averageinclude/linux/swait.h+25 -04 replies
1/2swait: add idle variants which don't contribute to load averageinclude/linux/swait.h+55 -00 replies
2/2rcu: use idle versions of swait to make idle-hack clearkernel/rcu/tree.c+2 -20 replies
2/2rcu: use idle versions of swait to make idle-hack clearkernel/rcu/tree.c+5 -60 replies

Reviews trailers per patch

All 4 patches have a Reviewed-by or Acked-by of their own; the series has one for all of them.

PatchPaul E. McKenneyEric W. Biederman
SeriesT-b A-b A-b
1/2T-b A-b A-b
1/2T-b A-b A-b
2/2T-b A-b
2/2T-b A-b

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.

Read the v2 thread

Cover letter [RFC v2 0/2] swait: add idle to make idle-hacks on kthreads explicit

While reviewing RCU's interruptible swaits I noticed signals were actually not expected. Paul explained that the reason signals are not expected is we use kthreads, which don't get signals, furthermore the code avoided the uninterruptible swaits as otherwise it would contribute to the system load average on idle, bumping it from 0 to 2 or 3 (depending on preemption).

Since this can be confusing its best to be explicit about the requirements and goals. This patch depends on the other killable swaits [0] recently proposed as well interms of context. Thee patch can however be tested independently if the hunk is addressed separately.

[0] https://lkml.kernel.org/r/[email protected]

Luis R. Rodriguez (2):
swait: add idle variants which don't contribute to load average
rcu: use idle versions of swait to make idle-hack clear

 include/linux/swait.h | 25 +++++++++++++++++++++++++
 kernel/rcu/tree.c     |  4 ++--
 2 files changed, 27 insertions(+), 2 deletions(-)
Signature · 1 line
2.11.0