[patch V2 00/10] hrtimer: Reprogramming and clock_was_set() overhaul
From: Thomas Gleixner
Date: Tue Jul 13 2021 - 09:54:26 EST
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@xxxxxxxxxxxxx
and
https://lore.kernel.org/r/87v989topu.ffs@xxxxxxxxxxxxxxxxxxxxxxx
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(-)