From: Will Deacon <will@kernel.org>
To: linux-arm-kernel@lists.infradead.org
Cc: linux-kernel@vger.kernel.org, Will Deacon <will@kernel.org>,
Arnd Bergmann <arnd@arndb.de>, Ard Biesheuvel <ardb@kernel.org>,
Eric Biggers <ebiggers@kernel.org>,
Daniel Borkmann <daniel@iogearbox.net>,
Catalin Marinas <catalin.marinas@arm.com>,
Alexei Starovoitov <ast@kernel.org>,
Oliver Upton <oupton@kernel.org>,
Herbert Xu <herbert@gondor.apana.org.au>,
Marc Zyngier <maz@kernel.org>
Subject: [PATCH v3 02/13] arm64: bpf: Remove big-endian support from the JIT compiler
Date: Fri, 18 Sep 2026 15:52:04 +0100 [thread overview]
Message-ID: <20260918145217.1669-3-will@kernel.org> (raw)
In-Reply-To: <20260918145217.1669-1-will@kernel.org>
Big-endian support on arm64 depends on BROKEN. In preparation for
removing the dead code altogether, remove the big-endian-specific
support from the arm64 BPF JIT backend.
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Marc Zyngier <maz@kernel.org>
Acked-by: Eric Biggers <ebiggers@kernel.org>
Acked-by: Alexei Starovoitov <ast@kernel.org>
Signed-off-by: Will Deacon <will@kernel.org>
---
arch/arm64/net/bpf_jit_comp.c | 11 -----------
1 file changed, 11 deletions(-)
diff --git a/arch/arm64/net/bpf_jit_comp.c b/arch/arm64/net/bpf_jit_comp.c
index c18e005a41db..a5634428fdd5 100644
--- a/arch/arm64/net/bpf_jit_comp.c
+++ b/arch/arm64/net/bpf_jit_comp.c
@@ -1439,13 +1439,8 @@ static int build_insn(const struct bpf_verifier_env *env, const struct bpf_insn
case BPF_ALU | BPF_END | BPF_FROM_LE:
case BPF_ALU | BPF_END | BPF_FROM_BE:
case BPF_ALU64 | BPF_END | BPF_FROM_LE:
-#ifdef CONFIG_CPU_BIG_ENDIAN
- if (BPF_CLASS(code) == BPF_ALU && BPF_SRC(code) == BPF_FROM_BE)
- goto emit_bswap_uxt;
-#else /* !CONFIG_CPU_BIG_ENDIAN */
if (BPF_CLASS(code) == BPF_ALU && BPF_SRC(code) == BPF_FROM_LE)
goto emit_bswap_uxt;
-#endif
switch (imm) {
case 16:
emit(A64_REV16(is64, dst, dst), ctx);
@@ -2559,15 +2554,9 @@ static void clear_garbage(struct jit_ctx *ctx, int reg, int effective_bytes)
{
if (effective_bytes) {
int garbage_bits = 64 - 8 * effective_bytes;
-#ifdef CONFIG_CPU_BIG_ENDIAN
- /* garbage bits are at the right end */
- emit(A64_LSR(1, reg, reg, garbage_bits), ctx);
- emit(A64_LSL(1, reg, reg, garbage_bits), ctx);
-#else
/* garbage bits are at the left end */
emit(A64_LSL(1, reg, reg, garbage_bits), ctx);
emit(A64_LSR(1, reg, reg, garbage_bits), ctx);
-#endif
}
}
--
2.55.0.1082.g2b9226bbc0-goog
next prev parent reply other threads:[~2026-09-18 14:52 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-18 14:52 [PATCH v3 00/14] arm64: Remove unused big-endian support Will Deacon
2026-09-18 14:52 ` [PATCH v3 01/13] selftests/arm64: Remove " Will Deacon
2026-09-20 19:56 ` Thomas Gleixner
2026-09-18 14:52 ` Will Deacon [this message]
2026-09-18 14:52 ` [PATCH v3 03/13] arm64: crypto: Assume a little-endian kernel Will Deacon
2026-09-18 14:52 ` [PATCH v3 04/13] arm64: lib: Assume a little-endian kernel in custom library routines Will Deacon
2026-09-18 14:52 ` [PATCH v3 05/13] arm64: lib: Assume a little-endian kernel in optimised string routines Will Deacon
2026-09-18 14:52 ` [PATCH v3 06/13] arm64: assembler: Remove endianness helper macros Will Deacon
2026-09-18 14:52 ` [PATCH v3 07/13] arm64: vdso32: Always build compat vDSO object as little-endian Will Deacon
2026-09-18 14:52 ` [PATCH v3 08/13] KVM: arm64: Remove support for a big-endian hypervisor object Will Deacon
2026-09-18 14:52 ` [PATCH v3 09/13] arm64: Remove all usage of CONFIG_CPU_BIG_ENDIAN Will Deacon
2026-09-18 14:52 ` [PATCH v3 10/13] arm64: Remove all usage of __AARCH64EB__ Will Deacon
2026-09-18 14:52 ` [PATCH v3 11/13] crypto: hisilicon/sec2: Remove check of CONFIG_CPU_LITTLE_ENDIAN Will Deacon
2026-09-23 7:04 ` liulongfang
2026-09-18 14:52 ` [PATCH v3 12/13] arm64: Kbuild: Remove vestigial big-endian support Will Deacon
2026-09-21 10:24 ` Catalin Marinas
2026-09-22 15:10 ` Will Deacon
2026-09-22 15:17 ` Catalin Marinas
2026-09-22 15:32 ` Will Deacon
2026-09-18 14:52 ` [PATCH v3 13/13] drivers: Kconfig: Simplify dependencies on ARM64 && !CPU_BIG_ENDIAN Will Deacon
2026-09-18 16:22 ` [PATCH v3 00/14] arm64: Remove unused big-endian support Mark Rutland
2026-09-23 18:18 ` Catalin Marinas
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=20260918145217.1669-3-will@kernel.org \
--to=will@kernel.org \
--cc=ardb@kernel.org \
--cc=arnd@arndb.de \
--cc=ast@kernel.org \
--cc=catalin.marinas@arm.com \
--cc=daniel@iogearbox.net \
--cc=ebiggers@kernel.org \
--cc=herbert@gondor.apana.org.au \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=maz@kernel.org \
--cc=oupton@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.