From: Nathan Chancellor <nathan@kernel.org>
To: Rosen Penev <rosenp@gmail.com>
Cc: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>,
sparclinux@vger.kernel.org,
"David S. Miller" <davem@davemloft.net>,
Andreas Larsson <andreas@gaisler.com>,
Christian Brauner <brauner@kernel.org>,
Nick Desaulniers <nick.desaulniers+lkml@gmail.com>,
Bill Wendling <morbo@google.com>,
Justin Stitt <justinstitt@google.com>,
open list <linux-kernel@vger.kernel.org>,
"open list:CLANG/LLVM BUILD
SUPPORT:Keyword:\\b(?i:clang|llvm)\\b" <llvm@lists.linux.dev>,
Koakuma <koachan@protonmail.com>
Subject: Re: [PATCH] sparc: Avoid unsupported LLD branch relocations
Date: Thu, 14 May 2026 21:58:20 +0900 [thread overview]
Message-ID: <20260514125820.GB1781775@ax162> (raw)
In-Reply-To: <CAKxU2N_p7unDCif826jpTUtzs8=-ZoKw4u-Eg1UEM+4o+5Fbzg@mail.gmail.com>
+ Koakuma
On Wed, May 13, 2026 at 10:34:44PM -0700, Rosen Penev wrote:
> On Wed, May 13, 2026 at 10:03 PM John Paul Adrian Glaubitz
> <glaubitz@physik.fu-berlin.de> wrote:
> >
> > Hi Rosen,
> >
> > On Wed, 2026-05-13 at 21:19 -0700, Rosen Penev wrote:
> > > LLD does not support several SPARC branch relocation types, including
> > > R_SPARC_WDISP16, R_SPARC_WDISP19, and R_SPARC_WDISP22. A sparc64
> > > allmodconfig LLVM build can therefore fail when trap table code and
> > > low-level assembly leave branches to global symbols for the linker.
> > >
> > > Use local labels for branches that stay within the same assembled
> > > object so the assembler can resolve them directly. Convert the
> > > remaining cross-object branches and tail calls to absolute set/jmpl
> > > sequences, which LLD handles through the usual HI22/LO10 relocations.
> > >
> > > Disable the unused sparc32 syscall trace entry points when compat
> > > support is not built, and request sys_llseek for the native syscall
> > > table so the LLD allmodconfig build remains self-contained.
> >
> > I would rather fix LLD than making such intrusive changes to the SPARC
> > code in the kernel. In particular, since this touches the CPU-optimized
> > memory routines which had been haunted by subtle bugs for years and were
> > only fixed recently.
> >
> > Is improving LLD in this case not possible?
> Above my paygrade. I use this so that allmodconfig succeeds.
We document sparc64 as only having support for clang as the compiler
(not even supporting the integrated assembler yet, although maybe that
needs to be updated [1]?) in Documentation/kbuild/llvm.rst, so I don't
think we should take a patch like this. As far as I am aware, ld.lld
work for sparc64 has not happened yet to make it work with the kernel.
If you need to test with clang, use CC=clang LLVM_IAS=0 with GNU
binutils (CROSS_COMPILE=sparc64-linux-gnu-).
[1]: https://github.com/llvm/llvm-project/issues/40792
--
Cheers,
Nathan
prev parent reply other threads:[~2026-05-14 12:58 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-05-14 4:19 [PATCH] sparc: Avoid unsupported LLD branch relocations Rosen Penev
2026-05-14 5:03 ` John Paul Adrian Glaubitz
2026-05-14 5:34 ` Rosen Penev
2026-05-14 5:40 ` John Paul Adrian Glaubitz
2026-05-14 12:58 ` Nathan Chancellor [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260514125820.GB1781775@ax162 \
--to=nathan@kernel.org \
--cc=andreas@gaisler.com \
--cc=brauner@kernel.org \
--cc=davem@davemloft.net \
--cc=glaubitz@physik.fu-berlin.de \
--cc=justinstitt@google.com \
--cc=koachan@protonmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=llvm@lists.linux.dev \
--cc=morbo@google.com \
--cc=nick.desaulniers+lkml@gmail.com \
--cc=rosenp@gmail.com \
--cc=sparclinux@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.