Re: [PATCH v2 1/4] sched/isolation: API to get housekeeping online CPUs

From: Frederic Weisbecker
Date: Thu Sep 24 2020 - 08:10:03 EST


On Thu, Sep 24, 2020 at 10:40:29AM +0200, peterz@xxxxxxxxxxxxx wrote:
> On Wed, Sep 23, 2020 at 02:11:23PM -0400, Nitesh Narayan Lal wrote:
> > Introduce a new API hk_num_online_cpus(), that can be used to
> > retrieve the number of online housekeeping CPUs that are meant to handle
> > managed IRQ jobs.
> >
> > This API is introduced for the drivers that were previously relying only
> > on num_online_cpus() to determine the number of MSIX vectors to create.
> > In an RT environment with large isolated but fewer housekeeping CPUs this
> > was leading to a situation where an attempt to move all of the vectors
> > corresponding to isolated CPUs to housekeeping CPUs were failing due to
> > per CPU vector limit.
> >
> > Signed-off-by: Nitesh Narayan Lal <nitesh@xxxxxxxxxx>
> > ---
> > include/linux/sched/isolation.h | 13 +++++++++++++
> > 1 file changed, 13 insertions(+)
> >
> > diff --git a/include/linux/sched/isolation.h b/include/linux/sched/isolation.h
> > index cc9f393e2a70..2e96b626e02e 100644
> > --- a/include/linux/sched/isolation.h
> > +++ b/include/linux/sched/isolation.h
> > @@ -57,4 +57,17 @@ static inline bool housekeeping_cpu(int cpu, enum hk_flags flags)
> > return true;
> > }
> >
> > +static inline unsigned int hk_num_online_cpus(void)
>
> This breaks with the established naming of that header.

I guess we can make it housekeeping_num_online_cpus() ?