Messages in this thread | | | Date | Sun, 11 Feb 2024 11:37:52 -0500 | Subject | Re: [PATCH] hrtimer: select housekeeping CPU during migration | From | Waiman Long <> |
| |
On 2/11/24 08:52, Costa Shulyupin wrote: > because during CPU deactivation a timer can migrate > to isolated CPU and break CPU isolation. > > For reference see function get_nohz_timer_target, > which selects CPU for new timers from housekeeping_cpumask(HK_TYPE_TIMER) > > Inspired by Waiman Long <longman@redhat.com> > > Signed-off-by: Costa Shulyupin <costa.shul@redhat.com>
Nit: It is unusual to begin the commit log with "because".
Other than that, the patch looks good to me.
Reviewed-by: Waiman Long <longman@redhat.com>
> --- > kernel/time/hrtimer.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/kernel/time/hrtimer.c b/kernel/time/hrtimer.c > index f82997cf53b6..460d916e24b7 100644 > --- a/kernel/time/hrtimer.c > +++ b/kernel/time/hrtimer.c > @@ -2227,7 +2227,7 @@ static void migrate_hrtimer_list(struct hrtimer_clock_base *old_base, > int hrtimers_cpu_dying(unsigned int dying_cpu) > { > struct hrtimer_cpu_base *old_base, *new_base; > - int i, ncpu = cpumask_first(cpu_active_mask); > + int i, ncpu = cpumask_any_and(cpu_active_mask, housekeeping(HK_TYPE_TIMER)); > pr_debug("ncpu=%d, dying_cpu=%d\n", ncpu, dying_cpu); > > tick_cancel_sched_timer(dying_cpu);
| |