[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20210521112503.GA11850@willie-the-truck>
Date: Fri, 21 May 2021 12:25:04 +0100
From: Will Deacon <will@...nel.org>
To: Mika Penttilä <mika.penttila@...tfour.com>
Cc: linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org,
Frederic Weisbecker <fweisbec@...il.com>,
Thomas Gleixner <tglx@...utronix.de>,
Marc Zyngier <maz@...nel.org>,
Lorenzo Colitti <lorenzo@...gle.com>,
John Stultz <john.stultz@...aro.org>,
Stephen Boyd <sboyd@...nel.org>, kernel-team@...roid.com
Subject: Re: [PATCH 3/5] tick/broadcast: Prefer per-cpu oneshot wakeup timers
to broadcast
On Fri, May 21, 2021 at 05:25:41AM +0300, Mika Penttilä wrote:
> On 20.5.2021 21.47, Will Deacon wrote:
> > /*
> > * Conditionally install/replace broadcast device
> > */
> > -void tick_install_broadcast_device(struct clock_event_device *dev)
> > +void tick_install_broadcast_device(struct clock_event_device *dev, int cpu)
> > {
> > struct clock_event_device *cur = tick_broadcast_device.evtdev;
> > + if (tick_set_oneshot_wakeup_device(dev, cpu))
> > + return;
> > +
> > if (!tick_check_broadcast_device(cur, dev))
> > return;
>
> Does this disable hpet registering as a global broadcast device on x86 ? I
> think it starts with cpumask = cpu0 so it qualifies for a percpu wakeup
> timer.
Well spotted, I think you're probably right. I'll try to reproduce on my
laptop to confirm, but I hadn't noticed the tricks played with the cpumask
on x86.
I'll probably need to rework things so that we install the broadcast timer
first, but prefer global devices.
Will
Powered by blists - more mailing lists