Re: [v3 PATCH 2/3] powernv-cpufreq: Fix pstate_to_idx() to handle non-continguous pstates

From: Rafael J. Wysocki
Date: Wed Jan 03 2018 - 07:08:38 EST


On Monday, December 18, 2017 9:38:20 AM CET Gautham R Shenoy wrote:
> Hi Balbir,
>
> On Sun, Dec 17, 2017 at 02:15:25PM +1100, Balbir Singh wrote:
> > On Wed, Dec 13, 2017 at 5:57 PM, Gautham R. Shenoy
> > <ego@xxxxxxxxxxxxxxxxxx> wrote:
> > > From: "Gautham R. Shenoy" <ego@xxxxxxxxxxxxxxxxxx>
> > >
> > > The code in powernv-cpufreq, makes the following two assumptions which
> > > are not guaranteed by the device-tree bindings:
> > >
> > > 1) Pstate ids are continguous: This is used in pstate_to_idx() to
> > > obtain the reverse map from a pstate to it's corresponding
> > > entry into the cpufreq frequency table.
> > >
> > > 2) Every Pstate should always lie between the max and the min
> > > pstates that are explicitly reported in the device tree: This
> > > is used to determine whether a pstate reported by the PMSR is
> > > out of bounds.
> > >
> > > Both these assumptions are unwarranted and can change on future
> > > platforms.
> >
> > While this is a good thing, I wonder if it is worth the complexity. Pstates
> > are contiguous because they define transitions in incremental value
> > of change in frequency and I can't see how this can be broken in the
> > future?
>
> In the future, we can have the OPAL firmware give us a smaller set of
> pstates instead of expose every one of them. As it stands today, for
> most of the workloads, we will need at best 20-30 pstates and not
> beyond that.

I'm not sure about the status here.

Is this good to go as is or is it going to be updated?

Thanks,
Rafael