Re: [PATCH v6 02/21] arm64: Allow mismatched 32-bit EL0 support

From: Catalin Marinas
Date: Mon May 24 2021 - 09:49:37 EST


On Mon, May 24, 2021 at 01:05:50PM +0100, Will Deacon wrote:
> On Fri, May 21, 2021 at 11:25:23AM +0100, Catalin Marinas wrote:
> > On Tue, May 18, 2021 at 10:47:06AM +0100, Will Deacon wrote:
> > > +static bool has_32bit_el0(const struct arm64_cpu_capabilities *entry, int scope)
> > > +{
> > > + if (!has_cpuid_feature(entry, scope))
> > > + return allow_mismatched_32bit_el0;
> > > +
> > > + if (scope == SCOPE_SYSTEM)
> > > + pr_info("detected: 32-bit EL0 Support\n");
> > > +
> > > + return true;
> > > +}
> >
> > We may have discussed this before: AFAICT this will print 32-bit EL0
> > detected even if there's no 32-bit EL0 on any CPU. Should we instead
> > print 32-bit EL0 detected on CPU X when allow_mismatched_32bit_el0 is
> > passed? It would also give us an indication of the system configuration
> > when people start reporting bugs.
>
> The function above only runs if we've detected 32-bit support via
> aa64pfr0_el1, so I think we're ok. We also have a print when we detect the
> mismatch (see enable_mismatched_32bit_el0()).

It makes sense, you removed the .desc from the arm64_features entry as
well.

Reviewed-by: Catalin Marinas <catalin.marinas@xxxxxxx>