[Skiboot-stable] [Skiboot] [PATCH] phb4: Avoid MMIO load freeze escalation on every chip

Mahesh J Salgaonkar mahesh at linux.ibm.com
Mon Feb 15 16:30:04 AEDT 2021


On 2021-02-12 11:14:42 Fri, Vasant Hegde wrote:
> On 2/9/21 2:14 PM, Mahesh Salgaonkar wrote:
> > The commit f397cc30bdf8 ("phb4: Only escalate freezes on MMIO load where
> > necessary") introduced a change to restrict escalation to the chips that
> > actually need it. However it missed one case which still causes the
> > escalation on every chip. This affects EEH recovery to cause full
> > PHB reset on some chips which is not necessary. This patch fixes that.
> > Also, add a check for p9 chip in phb4_escalation_required() function.
> > 
> > Cc: skiboot-stable at lists.ozlabs.org
> > Signed-off-by: Mahesh Salgaonkar <mahesh at linux.ibm.com>
> > ---
> >   hw/phb4.c |    6 +++++-
> >   1 file changed, 5 insertions(+), 1 deletion(-)
> > 
> > diff --git a/hw/phb4.c b/hw/phb4.c
> > index e7758d346b..edbcdb2179 100644
> > --- a/hw/phb4.c
> > +++ b/hw/phb4.c
> > @@ -3590,6 +3590,10 @@ static bool phb4_escalation_required(void)
> >   {
> >   	uint64_t pvr = mfspr(SPR_PVR);
> > 
> > +	/* Only on Power9 */
> > +	if (proc_gen != proc_gen_p9)
> > +		return false;
> > +
> 
> Do we really need this check? Below we have chip specific checks.

Yes. The escalation workaround introduced was very specific to few chips
in power9 generation. The below checks takes decision based on bit 50 in
PVR register not based on proc generation. Adding this check makes sure
that the escalation happens only for sepcific Power9 chips.

Thanks,
-Mahesh.

> 
> -Vasant
> 

-- 
Mahesh J Salgaonkar


More information about the Skiboot-stable mailing list