From: Nathan Chancellor <nathan@kernel.org> To: Catalin Marinas <catalin.marinas@arm.com>, Will Deacon <will@kernel.org> Cc: Arnd Bergmann <arnd@arndb.de>, Nick Desaulniers <ndesaulniers@google.com>, linux-kernel@vger.kernel.org, clang-built-linux@googlegroups.com, linux-arm-kernel@lists.infradead.org Subject: Re: [PATCH] arm64: Make CPU_BIG_ENDIAN depend on !LD_IS_LLD Date: Sat, 6 Feb 2021 19:30:41 -0700 [thread overview] Message-ID: <20210207023041.GA655027@ubuntu-m3-large-x86> (raw) In-Reply-To: <20210202022441.1451389-1-nathan@kernel.org> On Mon, Feb 01, 2021 at 07:24:42PM -0700, Nathan Chancellor wrote: > Similar to commit 28187dc8ebd9 ("ARM: 9025/1: Kconfig: CPU_BIG_ENDIAN > depends on !LD_IS_LLD"), ld.lld does not support aarch64 big endian, > leading to the following build error when CONFIG_CPU_BIG_ENDIAN is > selected: > > ld.lld: error: unknown emulation: aarch64linuxb > > There are not currently plans to implement big endian support for > aarch64 in ld.lld but if it should be supported in the future, this > symbol can depend on the version that first supports it. In the > meantime, prevent this symbol from being selected to avoid these type > of build errors. > > While we are here, the indentation of this symbol used spaces since its > introduction in commit a872013d6d03 ("arm64: kconfig: allow > CPU_BIG_ENDIAN to be selected"). Change it to tabs to be consistent with > kernel coding style. > > Link: https://github.com/ClangBuiltLinux/linux/issues/380 > Link: https://github.com/ClangBuiltLinux/linux/issues/1288 > Reported-by: Arnd Bergmann <arnd@arndb.de> > Signed-off-by: Nathan Chancellor <nathan@kernel.org> Fangrui has pushed proper aarch64linuxb and elf64-bigaarch64 for ld.lld: https://reviews.llvm.org/D96211 https://reviews.llvm.org/D96188 This patch is needed for OUTPUT_FORMAT in the vDSO to work properly: https://reviews.llvm.org/D96214 Once these are all merged into LLVM 13, I will update this to be: depends on !LD_IS_LLD || LLD_VERSION >= 130000 Cheers, Nathan > --- > arch/arm64/Kconfig | 5 +++-- > 1 file changed, 3 insertions(+), 2 deletions(-) > > diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig > index f39568b28ec1..5ddf9fe7b4ee 100644 > --- a/arch/arm64/Kconfig > +++ b/arch/arm64/Kconfig > @@ -952,8 +952,9 @@ choice > that is selected here. > > config CPU_BIG_ENDIAN > - bool "Build big-endian kernel" > - help > + bool "Build big-endian kernel" > + depends on !LD_IS_LLD > + help > Say Y if you plan on running a kernel with a big-endian userspace. > > config CPU_LITTLE_ENDIAN > > base-commit: 88bb507a74ea7d75fa49edd421eaa710a7d80598 > -- > 2.30.0 > > > _______________________________________________ > linux-arm-kernel mailing list > linux-arm-kernel@lists.infradead.org > http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
WARNING: multiple messages have this Message-ID (diff)
From: Nathan Chancellor <nathan@kernel.org> To: Catalin Marinas <catalin.marinas@arm.com>, Will Deacon <will@kernel.org> Cc: linux-arm-kernel@lists.infradead.org, clang-built-linux@googlegroups.com, Nick Desaulniers <ndesaulniers@google.com>, linux-kernel@vger.kernel.org, Arnd Bergmann <arnd@arndb.de> Subject: Re: [PATCH] arm64: Make CPU_BIG_ENDIAN depend on !LD_IS_LLD Date: Sat, 6 Feb 2021 19:30:41 -0700 [thread overview] Message-ID: <20210207023041.GA655027@ubuntu-m3-large-x86> (raw) In-Reply-To: <20210202022441.1451389-1-nathan@kernel.org> On Mon, Feb 01, 2021 at 07:24:42PM -0700, Nathan Chancellor wrote: > Similar to commit 28187dc8ebd9 ("ARM: 9025/1: Kconfig: CPU_BIG_ENDIAN > depends on !LD_IS_LLD"), ld.lld does not support aarch64 big endian, > leading to the following build error when CONFIG_CPU_BIG_ENDIAN is > selected: > > ld.lld: error: unknown emulation: aarch64linuxb > > There are not currently plans to implement big endian support for > aarch64 in ld.lld but if it should be supported in the future, this > symbol can depend on the version that first supports it. In the > meantime, prevent this symbol from being selected to avoid these type > of build errors. > > While we are here, the indentation of this symbol used spaces since its > introduction in commit a872013d6d03 ("arm64: kconfig: allow > CPU_BIG_ENDIAN to be selected"). Change it to tabs to be consistent with > kernel coding style. > > Link: https://github.com/ClangBuiltLinux/linux/issues/380 > Link: https://github.com/ClangBuiltLinux/linux/issues/1288 > Reported-by: Arnd Bergmann <arnd@arndb.de> > Signed-off-by: Nathan Chancellor <nathan@kernel.org> Fangrui has pushed proper aarch64linuxb and elf64-bigaarch64 for ld.lld: https://reviews.llvm.org/D96211 https://reviews.llvm.org/D96188 This patch is needed for OUTPUT_FORMAT in the vDSO to work properly: https://reviews.llvm.org/D96214 Once these are all merged into LLVM 13, I will update this to be: depends on !LD_IS_LLD || LLD_VERSION >= 130000 Cheers, Nathan > --- > arch/arm64/Kconfig | 5 +++-- > 1 file changed, 3 insertions(+), 2 deletions(-) > > diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig > index f39568b28ec1..5ddf9fe7b4ee 100644 > --- a/arch/arm64/Kconfig > +++ b/arch/arm64/Kconfig > @@ -952,8 +952,9 @@ choice > that is selected here. > > config CPU_BIG_ENDIAN > - bool "Build big-endian kernel" > - help > + bool "Build big-endian kernel" > + depends on !LD_IS_LLD > + help > Say Y if you plan on running a kernel with a big-endian userspace. > > config CPU_LITTLE_ENDIAN > > base-commit: 88bb507a74ea7d75fa49edd421eaa710a7d80598 > -- > 2.30.0 > > > _______________________________________________ > linux-arm-kernel mailing list > linux-arm-kernel@lists.infradead.org > http://lists.infradead.org/mailman/listinfo/linux-arm-kernel _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2021-02-07 2:31 UTC|newest] Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-02-02 2:24 [PATCH] arm64: Make CPU_BIG_ENDIAN depend on !LD_IS_LLD Nathan Chancellor 2021-02-02 2:24 ` Nathan Chancellor 2021-02-02 8:04 ` Arnd Bergmann 2021-02-02 8:04 ` Arnd Bergmann 2021-02-02 19:51 ` Nathan Chancellor 2021-02-02 19:51 ` Nathan Chancellor 2021-02-02 20:43 ` Arnd Bergmann 2021-02-02 20:43 ` Arnd Bergmann 2021-02-03 10:08 ` Peter Smith 2021-02-03 10:08 ` Peter Smith 2021-02-07 2:30 ` Nathan Chancellor [this message] 2021-02-07 2:30 ` Nathan Chancellor 2021-02-09 0:57 ` [PATCH v2] arm64: Make CPU_BIG_ENDIAN depend on ld.bfd or ld.lld 13.0.0+ Nathan Chancellor 2021-02-09 0:57 ` Nathan Chancellor 2021-02-09 1:39 ` Nick Desaulniers 2021-02-09 1:39 ` Nick Desaulniers 2021-02-09 14:35 ` Will Deacon 2021-02-09 14:35 ` Will Deacon
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=20210207023041.GA655027@ubuntu-m3-large-x86 \ --to=nathan@kernel.org \ --cc=arnd@arndb.de \ --cc=catalin.marinas@arm.com \ --cc=clang-built-linux@googlegroups.com \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-kernel@vger.kernel.org \ --cc=ndesaulniers@google.com \ --cc=will@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: linkBe 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.