[PATCH] arm64: Kconfig: Make CPU_BIG_ENDIAN depend on BROKEN

Ard Biesheuvel ardb at kernel.org
Fri Sep 19 12:00:17 PDT 2025


On Fri, 19 Sept 2025 at 20:40, Will Deacon <will at kernel.org> wrote:
>
> Big-endian arm64 configurations are vanishingly rare, yet we still claim
> to support them in Linux despite very limited testing or visible
> interest. Supporting big-endian adds unnecessary burden to reviewers and
> contributors which, without any known active users, is hard to justify.
> For example, recent work to improve our futex routines and to implement
> nested virtualisation support is non-trivially complicated by having to
> support both big- and little-endianness.
>
> Back in 2019 [1], it was claimed that Huawei were using arm64 big-endian
> machines in their telecommunication products but I don't know whether
> that's still the case and certainly haven't seen any patch contributions
> to help support or maintain it.
>
> Make CPU_BIG_ENDIAN depend on BROKEN as an initial deprecation step
> towards its removal.
>
> Cc: Catalin Marinas <catalin.marinas at arm.com>
> Cc: Marc Zyngier <maz at kernel.org>
> Cc: Ard Biesheuvel <ardb at kernel.org>
> Cc: Arnd Bergmann <arnd at arndb.de>
> Cc: Hanjun Guo <guohanjun at huawei.com>
> Cc: Jonathan Cameron <Jonathan.Cameron at huawei.com>
> Cc: Guenter Roeck <linux at roeck-us.net>
> Link: https://lore.kernel.org/linux-arm-kernel/73701e9f-bee1-7ae8-2277-7a3576171cd4@huawei.com/ [1]
> Signed-off-by: Will Deacon <will at kernel.org>
> ---
>

Acked-by: Ard Biesheuvel <ardb at kernel.org>

> Cc'ing Guenter as a heads-up in case he needs to turn down his testing
> to avoid this causing a false regression report.
>
> Cc'ing Hanjun and Jonathan for clarity on the telecommunication
> situation.
>
>  arch/arm64/Kconfig | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
> index e9bbfacc35a6..5ac670d41604 100644
> --- a/arch/arm64/Kconfig
> +++ b/arch/arm64/Kconfig
> @@ -1493,7 +1493,7 @@ choice
>  config CPU_BIG_ENDIAN
>         bool "Build big-endian kernel"
>         # https://github.com/llvm/llvm-project/commit/1379b150991f70a5782e9a143c2ba5308da1161c
> -       depends on AS_IS_GNU || AS_VERSION >= 150000
> +       depends on (AS_IS_GNU || AS_VERSION >= 150000) && BROKEN
>         help
>           Say Y if you plan on running a kernel with a big-endian userspace.
>
> --
> 2.51.0.470.ga7dc726c21-goog
>



More information about the linux-arm-kernel mailing list