[PATCH RFC] riscv: Allow to build only with LLVM >= 17.0.0
Conor Dooley
conor at kernel.org
Wed Jul 17 05:06:39 PDT 2024
On Wed, Jul 17, 2024 at 01:41:23PM +0200, Alexandre Ghiti wrote:
> Hi Conor,
>
> On 17/07/2024 13:32, Conor Dooley wrote:
> > On Wed, Jul 17, 2024 at 01:17:16PM +0200, Alexandre Ghiti wrote:
> > > The following build failure happens when using LLVM < 17.0.0:
> > >
> > > kernel/sched/core.c:11873:7: error: cannot jump from this asm goto statement to one of its possible targets
> > >
> > > This is a known issue [1] so let's upgrade the minimal requirement for
> > > LLVM to the version 17.0.0, which is the first version to contain the
> > > fix.
> > I think doing this unilaterally is kinda insane, LLVM 17 isn't even a
> > year old. Debian testing doesn't have anything later than 16.
>
>
> Debian will very likely select the qspinlocks when available anyway, so
> they'll need llvm >= 17. And Debian won't ship a kernel >= 6.11 until some
> time right? So they'll probably update their infra to llvm >= 17 (and
> they'll probably do to take advantages of the new extensions).
What I mean is that you are going to prevent people building the kernel
with llvm on machines running anything but very recent rolling-release
distros. Your patch would stop most developers, including those who don't
care about your qspinlock stuff, even build testing with the version of
LLVM that their distro provides. I'm not talking about distros building
kernels in their build infrastructure.
>
>
> > Why does
> > it need to be done unilaterally rather than just when the qspinlock
> > stuff is built?
>
>
> We can do that indeed, it may happen again and we can keep requiring llvm 17
> on a per-config basis.
>
>
> > > Link: https://github.com/ClangBuiltLinux/linux/issues/1886#issuecomment-1645979992 [1]
> > > Reported-by: kernel test robot <lkp at intel.com>
> > > Closes: https://lore.kernel.org/oe-kbuild-all/202407041157.odTZAYZ6-lkp@intel.com/
> > > Signed-off-by: Nathan Chancellor <nathan at kernel.org>
> > If Nathan wrote the patch, you need to set him as the author of the
> > patch :)
>
>
> I thought I did, how should I do that then?
>
>
> >
> > > Signed-off-by: Alexandre Ghiti <alexghiti at rivosinc.com>
> > > ---
> > >
> > > This patch was done by Nathan, I'm just sending it as an RFC to get quicker
> > > feedbacks.
> > >
> > > I tested it successfully.
> > >
> > > Note that the build failure happens on the not-yet merged qspinlock
> > > patchset.
> > >
> > > scripts/min-tool-version.sh | 2 ++
> > > 1 file changed, 2 insertions(+)
> > >
> > > diff --git a/scripts/min-tool-version.sh b/scripts/min-tool-version.sh
> > > index 91c91201212c..e81eb7ed257d 100755
> > > --- a/scripts/min-tool-version.sh
> > > +++ b/scripts/min-tool-version.sh
> > > @@ -28,6 +28,8 @@ llvm)
> > > echo 15.0.0
> > > elif [ "$SRCARCH" = loongarch ]; then
> > > echo 18.0.0
> > > + elif [ "$SRCARCH" = riscv ]; then
> > > + echo 17.0.0
> > > else
> > > echo 13.0.1
> > > fi
> > > --
> > > 2.39.2
> > >
> > >
> > >
> > > _______________________________________________
> > > linux-riscv mailing list
> > > linux-riscv at lists.infradead.org
> > > http://lists.infradead.org/mailman/listinfo/linux-riscv
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 228 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-riscv/attachments/20240717/8812b173/attachment.sig>
More information about the linux-riscv
mailing list