Skip to content

tick/nohz updates

Frederic Weisbecker linux-pm lkml 1 version In review

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest10 patches 24 repliesIn review

Patches in v1 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/10tick/nohz: Prevent tick_nohz_get_sleep_length() from returning negative valuekernel/time/tick-sched.c+6 -020 replies
2/10tick/nohz: Add tick_nohz_full_this_cpu()include/linux/tick.h kernel/time/tick-sched.c+15 -82 replies
3/10tick/nohz: Conditionally restart tick on idle exitkernel/time/tick-sched.c+30 -200 replies
4/10tick/nohz: Remove superflous check for CONFIG_VIRT_CPU_ACCOUNTING_NATIVEkernel/time/tick-sched.c+0 -20 replies
5/10tick/nohz: Update idle_exittime on actual idle exitkernel/time/tick-sched.c+8 -60 replies
6/10timer: Report ignored local enqueue in nohz modekernel/sched/core.c+19 -12 replies
7/10tick/nohz: Update nohz_full Kconfig helpkernel/time/Kconfig+6 -50 replies
8/10tick/nohz: Only wakeup a single target cpu when kicking a taskkernel/time/tick-sched.c+27 -130 replies
9/10tick/nohz: Change signal tick dependency to wakeup CPUs of member tasksinclude/linux/tick.h kernel/time/posix-cpu-timers.c kernel/time/tick-sched.c+19 -80 replies
10/10tick/nohz: Kick only _queued_ task whose tick dependency is updatedinclude/linux/sched.h kernel/sched/core.c kernel/time/tick-sched.c+24 -20 replies

Reviews trailers per patch

1 of 10 patches has a Reviewed-by or Acked-by.

PatchRafael J. Wysocki
1/10
2/10
3/10
4/10
5/10
6/10R-b
7/10
8/10
9/10
10/10

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

Read the v1 thread

Cover letter [PATCH 00/10] tick/nohz updates

Various updates for the timer/nohz side.

* Two fixes (maybe 01/10 deserves a stable tag, I should check)

* A Kconfig help change

* A debug check while enqueuing timers when the tick is stopped in idle.

* The rest is noise reduction for full nohz ("tick/nohz: Kick only _queued_ task whose tick dependency is updated").
It relies on the fact that p->on_rq is never set to anything else than TASK_ON_RQ_QUEUED while the task is running on a CPU, the only relevant exception being the task dequeuing itself on schedule().
I haven't found issues in my modest reviews of deactivate_task() callers but I lost my headlamp while visiting fair's sched entity dequeuing and throttling (had to find my way back in the dark again).

So please double check the last patch.

git://git.kernel.org/pub/scm/linux/kernel/git/frederic/linux-dynticks.git
timers/nohz

HEAD: e469edfa00f97e5ec5d31fe31d3aef0a5c9bd607

Thanks,
Frederic
---

Frederic Weisbecker (5):
tick/nohz: Add tick_nohz_full_this_cpu()
tick/nohz: Remove superflous check for CONFIG_VIRT_CPU_ACCOUNTING_NATIVE
timer: Report ignored local enqueue in nohz mode
tick/nohz: Update nohz_full Kconfig help
tick/nohz: Only wakeup a single target cpu when kicking a task

Marcelo Tosatti (2):
tick/nohz: Change signal tick dependency to wakeup CPUs of member tasks tick/nohz: Kick only _queued_ task whose tick dependency is updated

Yunfeng Ye (2):
tick/nohz: Conditionally restart tick on idle exit tick/nohz: Update idle_exittime on actual idle exit

Zhou Ti (x2019cwm) (1):
tick/nohz: Prevent tick_nohz_get_sleep_length() from returning negative value

 include/linux/sched.h          |   2 +
 include/linux/tick.h           |  19 ++++--
 kernel/sched/core.c            |  25 +++++++-
 kernel/time/Kconfig            |  11 ++--
 kernel/time/posix-cpu-timers.c |   4 +-
 kernel/time/tick-sched.c       | 134 +++++++++++++++++++++++++++++------------
 6 files changed, 142 insertions(+), 53 deletions(-)