2024-03-17 09:05:04

by Ingo Molnar

[permalink] [raw]
Subject: [GIT PULL] timers fix

Linus,

Please pull the latest timers/urgent git tree from:

git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git timers-urgent-2024-03-17

# HEAD: 4b6f4c5a67c07417bf29d896c76f513a4be07516 timer/migration: Remove buggy early return on deactivation

Fix timer migration bug that can result in long bootup
delays and other oddities.

Thanks,

Ingo

------------------>
Frederic Weisbecker (1):
timer/migration: Remove buggy early return on deactivation


kernel/time/timer_migration.c | 20 --------------------
1 file changed, 20 deletions(-)

diff --git a/kernel/time/timer_migration.c b/kernel/time/timer_migration.c
index 8f49b6b96dfd..611cd904f035 100644
--- a/kernel/time/timer_migration.c
+++ b/kernel/time/timer_migration.c
@@ -751,26 +751,6 @@ bool tmigr_update_events(struct tmigr_group *group, struct tmigr_group *child,

first_childevt = evt = data->evt;

- /*
- * Walking the hierarchy is required in any case when a
- * remote expiry was done before. This ensures to not lose
- * already queued events in non active groups (see section
- * "Required event and timerqueue update after a remote
- * expiry" in the documentation at the top).
- *
- * The two call sites which are executed without a remote expiry
- * before, are not prevented from propagating changes through
- * the hierarchy by the return:
- * - When entering this path by tmigr_new_timer(), @evt->ignore
- * is never set.
- * - tmigr_inactive_up() takes care of the propagation by
- * itself and ignores the return value. But an immediate
- * return is required because nothing has to be done in this
- * level as the event could be ignored.
- */
- if (evt->ignore && !remote)
- return true;
-
raw_spin_lock(&group->lock);

childstate.state = 0;


2024-03-17 19:34:52

by pr-tracker-bot

[permalink] [raw]
Subject: Re: [GIT PULL] timers fix

The pull request you sent on Sun, 17 Mar 2024 10:04:49 +0100:

> git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git timers-urgent-2024-03-17

has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/8048ba24e1e678c595ceec76fed7c0c14f9cab1e

Thank you!

--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/prtracker.html