[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ZgMDcGOagCjfIB3i@localhost.localdomain>
Date: Tue, 26 Mar 2024 18:18:40 +0100
From: Frederic Weisbecker <frederic@...nel.org>
To: Anna-Maria Behnsen <anna-maria@...utronix.de>
Cc: Boqun Feng <boqun.feng@...il.com>,
Florian Fainelli <f.fainelli@...il.com>,
Thomas Gleixner <tglx@...utronix.de>,
"Russell King (Oracle)" <linux@...linux.org.uk>,
Joel Fernandes <joel@...lfernandes.org>,
Linus Torvalds <torvalds@...ux-foundation.org>,
linux-kernel@...r.kernel.org, kernel-team@...a.com,
paulmck@...nel.org, mingo@...nel.org, rcu@...r.kernel.org,
neeraj.upadhyay@....com, urezki@...il.com,
qiang.zhang1211@...il.com, bigeasy@...utronix.de,
chenzhongjin@...wei.com, yangjihong1@...wei.com,
rostedt@...dmis.org, Justin Chen <justin.chen@...adcom.com>
Subject: Re: [PATCH] timer/migration: Remove buggy early return on
deactivation [was Re: Unexplained long boot delays [Was Re: [GIT PULL] RCU
changes for v6.9]]
Le Tue, Mar 26, 2024 at 05:41:00PM +0100, Anna-Maria Behnsen a écrit :
> Frederic Weisbecker <frederic@...nel.org> writes:
> Now propagation goes on as GRP0:0 is completely idle. When executing
> tmigr_update_events() in the next step of walking the hierarchy via
> tmigr_inactive_up(), the arguments for tmigr_update_events() are set in
> the following way:
>
> group = GRP1:0
> child = GRP0:0
>
> Then at the begin of tmigr_update_events() the group event of child is
> updated - so all ignored events are removed (T0i), and the
> child->groupevt and child->next_expiry is updated with T1. This
> reevaluated child->groupevt is then queued/updated in the GRP1:0
> timerqueue.
>
> So T1 will be handled!
>
> As there is no parent, the top level group event is updated (see goto
> label "check_toplvl") and T1 will be still the first event.
Bah! Good point, I got confused there...
>
> > Fix those issues with removing the buggy related early return. Ignored
> > child events must not prevent from evaluating the other events within
> > the same group.
>
> I would prefere to keep this early return but skip it, when there is
> !group->parent (only a single level in hierarchy).
>
> Then it would prevent taking the group lock and making some random
> event updates which are done nevertheless on the next iteration of the
> hierarchy walk.
Ok sounds like a good plan!
Thanks.
>
> Thanks,
>
> Anna-Maria
>
Powered by blists - more mailing lists