linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [patch V2 00/10] hrtimer: Reprogramming and clock_was_set() overhaul
@ 2021-07-13 13:39 Thomas Gleixner
  2021-07-13 13:39 ` [patch V2 01/10] hrtimer: Avoid double reprogramming in __hrtimer_start_range_ns() Thomas Gleixner
                   ` (9 more replies)
  0 siblings, 10 replies; 36+ messages in thread
From: Thomas Gleixner @ 2021-07-13 13:39 UTC (permalink / raw)
  To: LKML
  Cc: Peter Zijlstra, Anna-Maria Behnsen, Marcelo Tosatti, Frederic Weisbecker

Folks!

This is the second version of the clock_was_set() overhaul together with
the avoidance of double reprogramming when rearming an enqueued timer.

Version 1 of those patches can be found here:

   https://lore.kernel.org/r/20210427082537.611978720@linutronix.de
and
   https://lore.kernel.org/r/87v989topu.ffs@nanos.tec.linutronix.de

Both the reprogramming logic and the clock_was_set() logic are not really
optimized. The series addresses this.

  - Avoid double reprogramming when an enqueued timer is rearmed

  - Consolidate the reprogramming variants (Peter Zijlstra)

  - Fix the cases where the clock_was_set() handling is incorrect depending
    on configuration or runtime conditions.

  - Distangle the resume notification and the clock-was-set mechanism to
    prepare for IPI avoidance

  - Adopt Marcelo's patch to the modified code and add some more smarts on
    top.

The series is also available from git:

  git://git.kernel.org/pub/scm/linux/kernel/git/tglx/devel.git hrtimer

Changes vs V1:

  - Pick up Peter's consolidation patch
  - Polish a few things

Thanks,

	tglx
---
 fs/timerfd.c                |   16 ++
 include/linux/hrtimer.h     |    8 -
 kernel/time/hrtimer.c       |  337 +++++++++++++++++++++++++++++++-------------
 kernel/time/tick-common.c   |    7 
 kernel/time/tick-internal.h |   12 +
 kernel/time/timekeeping.c   |   36 ++--
 6 files changed, 299 insertions(+), 117 deletions(-)

^ permalink raw reply	[flat|nested] 36+ messages in thread

end of thread, other threads:[~2021-08-13  7:59 UTC | newest]

Thread overview: 36+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-07-13 13:39 [patch V2 00/10] hrtimer: Reprogramming and clock_was_set() overhaul Thomas Gleixner
2021-07-13 13:39 ` [patch V2 01/10] hrtimer: Avoid double reprogramming in __hrtimer_start_range_ns() Thomas Gleixner
2021-08-10 16:02   ` [tip: timers/core] " tip-bot2 for Thomas Gleixner
2021-07-13 13:39 ` [patch V2 02/10] hrtimer: Consolidate reprogramming code Thomas Gleixner
2021-08-10 16:02   ` [tip: timers/core] " tip-bot2 for Peter Zijlstra
2021-08-12  7:19     ` Mike Galbraith
2021-08-12 14:11       ` Thomas Gleixner
2021-08-12 14:32         ` Thomas Gleixner
2021-08-12 15:04           ` Mike Galbraith
2021-08-12 15:22             ` Thomas Gleixner
2021-08-12 15:31               ` Mike Galbraith
2021-08-12 16:58                 ` Thomas Gleixner
2021-08-12 15:27             ` Mike Galbraith
2021-08-12 20:32           ` [PATCH] hrtimer: Unbreak hrtimer_force_reprogram() Thomas Gleixner
2021-08-12 20:40             ` [tip: timers/core] " tip-bot2 for Thomas Gleixner
2021-08-13  7:58             ` [PATCH] " Thomas Gleixner
2021-08-12 20:31         ` [PATCH] hrtimer: Use raw_cpu_ptr() in clock_was_set() Thomas Gleixner
2021-08-12 20:40           ` [tip: timers/core] " tip-bot2 for Thomas Gleixner
2021-08-13  6:42           ` [PATCH] " Marek Szyprowski
     [not found]   ` <CGME20210812130945eucas1p117fc1e90f31c8d9fd177932cd1a18512@eucas1p1.samsung.com>
2021-08-12 13:09     ` [patch V2 02/10] hrtimer: Consolidate reprogramming code Marek Szyprowski
2021-07-13 13:39 ` [patch V2 03/10] hrtimer: Ensure timerfd notification for HIGHRES=n Thomas Gleixner
2021-08-10 16:02   ` [tip: timers/core] " tip-bot2 for Thomas Gleixner
2021-07-13 13:39 ` [patch V2 04/10] hrtimer: Force clock_was_set() handling for the HIGHRES=n, NOHZ=y case Thomas Gleixner
2021-08-10 16:02   ` [tip: timers/core] " tip-bot2 for Thomas Gleixner
2021-07-13 13:39 ` [patch V2 05/10] timerfd: Provide timerfd_resume() Thomas Gleixner
2021-08-10 16:02   ` [tip: timers/core] " tip-bot2 for Thomas Gleixner
2021-07-13 13:39 ` [patch V2 06/10] timekeeping: Distangle resume and clock-was-set events Thomas Gleixner
2021-08-10 16:02   ` [tip: timers/core] " tip-bot2 for Thomas Gleixner
2021-07-13 13:39 ` [patch V2 07/10] time/timekeeping: Avoid invoking clock_was_set() twice Thomas Gleixner
2021-08-10 16:02   ` [tip: timers/core] " tip-bot2 for Thomas Gleixner
2021-07-13 13:39 ` [patch V2 08/10] hrtimer: Add bases argument to clock_was_set() Thomas Gleixner
2021-08-10 16:02   ` [tip: timers/core] " tip-bot2 for Thomas Gleixner
2021-07-13 13:39 ` [patch V2 09/10] hrtimer: Avoid unnecessary SMP function calls in clock_was_set() Thomas Gleixner
2021-08-10 16:02   ` [tip: timers/core] " tip-bot2 for Marcelo Tosatti
2021-07-13 13:39 ` [patch V2 10/10] hrtimer: Avoid more " Thomas Gleixner
2021-08-10 16:02   ` [tip: timers/core] " tip-bot2 for Thomas Gleixner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).