Skip to content

Commit

Permalink
Merge tag 'timers-urgent-2024-03-17' of git://git.kernel.org/pub/scm/…
Browse files Browse the repository at this point in the history
…linux/kernel/git/tip/tip

Pull timer fix from Ingo Molnar:
 "Fix timer migration bug that can result in long bootup delays and
  other oddities"

* tag 'timers-urgent-2024-03-17' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  timer/migration: Remove buggy early return on deactivation
  • Loading branch information
Linus Torvalds committed Mar 17, 2024
2 parents b463a3c + 4b6f4c5 commit 8048ba2
Showing 1 changed file with 0 additions and 20 deletions.
20 changes: 0 additions & 20 deletions kernel/time/timer_migration.c
Original file line number Diff line number Diff line change
Expand Up @@ -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;
Expand Down

0 comments on commit 8048ba2

Please sign in to comment.