Skip to content

Commit 9e92064

Browse files
vincentmliAnsuel
authored andcommitted
loongarch64: Disable strict alignment to fix BPF program failures
CONFIG_ARCH_STRICT_ALIGN=y (default in config-6.12) causes BPF programs (XDP, TC, tracing, etc.) to fail verification with misaligned packet and memory access errors, breaking essential kernel functionality. Hardware support status: - Supported (modern CPUs): 2K2000, 2K3000, 3A5000, 3A6000, 3C5000, 3C6000, 3D5000 - Unsupported (legacy): 2K500, 2K1000 The current default prioritizes legacy compatibility over: 1. BPF program functionality across multiple subsystems 2. Performance on widely deployed modern hardware 3. Modern kernel features relying on unaligned accesses Since BPF programs require unaligned access capabilities and most LoongArch deployments use modern CPUs with hardware support, disable CONFIG_ARCH_STRICT_ALIGN. Legacy system users can manually enable it if needed. Link: vincentmli/bpfire#69 Reference: https://elixir.bootlin.com/linux/v6.12/source/arch/loongarch/Kconfig#L534 Signed-off-by: Vincent Li <[email protected]> Link: openwrt/openwrt#21121 Signed-off-by: Christian Marangi <[email protected]>
1 parent f3e4620 commit 9e92064

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

target/linux/loongarch64/config-6.12

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ CONFIG_ARCH_MMAP_RND_BITS_MIN=12
5252
CONFIG_ARCH_SELECT_MEMORY_MODEL=y
5353
CONFIG_ARCH_SPARSEMEM_ENABLE=y
5454
CONFIG_ARCH_STACKWALK=y
55-
CONFIG_ARCH_STRICT_ALIGN=y
55+
# CONFIG_ARCH_STRICT_ALIGN is not set
5656
CONFIG_ARCH_SUSPEND_POSSIBLE=y
5757
CONFIG_ARCH_WANTS_NO_INSTR=y
5858
CONFIG_ARCH_WANTS_THP_SWAP=y

0 commit comments

Comments
 (0)