Re: [PATCH v2] RISC-V: fix Andes errata build issues

From: Charlie Jenkins
Date: Wed May 15 2024 - 13:19:04 EST


On Wed, May 15, 2024 at 05:56:30PM +0100, Conor Dooley wrote:
> On Wed, May 15, 2024 at 09:49:24AM -0700, Charlie Jenkins wrote:
> > On Wed, May 15, 2024 at 05:09:34PM +0100, Conor Dooley wrote:
> > > From: Conor Dooley <conor.dooley@xxxxxxxxxxxxx>
> > >
> > > Commit e47c37c24024 ("riscv: Introduce vendor variants of extension
> > > helpers") added includes for the new vendor_extensions.h header in
> > > the T-Head and SiFive errata handling code but didn't do so for Andes,
> > > resulting in allmodconfig build issues when commit 589e2fc85850
> > > ("riscv: Convert xandespmu to use the vendor extension framework")
> > > added a user of a macro defined there.
> > >
> > > Fixes: 589e2fc85850 ("riscv: Convert xandespmu to use the vendor extension framework")
> > > Signed-off-by: Conor Dooley <conor.dooley@xxxxxxxxxxxxx>
>
> >
> > I was going to fix this in my next version but was waiting for the
> > reviews on the thead stuff. I wasn't anticipating these patches to be
> > able to jump the queue :)
>
> Yah, the reason for that is I asked him to take the non-vector parts of
> the series as 6.10 material so that we'd have less stuff movin' around
> in cpufeatures.c so that Clement's Zc* + validation changes wouldn't run
> into a bunch of conflicts etc. Same reason that I pushed for getting
> Andy's vector subset stuff merged today, but that mighta been before you
> hopped in.
>
> Cheers,
> Conor.

Yes I was a couple minutes late to the meeting, whoops. The subset of
patches that was pulled into for-next is odd to me because there is some
of the thead enablement code as part of the vendor extension enablement
so that there was a user for it. Since the subset on Palmer's for-next
does not have the rest of the thead code there is only a
half-implementation of the thead code, it allows the kernel to probe for
xtheadvector but it doesn't probe anywhere.

In my opinion, a better solution would be for me to get rid of the thead
code entirely from those patches. So that there is still a user, I can
replace the thead code with the andes versions.

Since Palmer already pulled in those changes maybe it's too late. There
is not a critical problem here, but it seems like it's bad practice to
introduce code without a user.

- Charlie