From: Alexei Starovoitov Date: Fri, 4 Jul 2025 02:31:30 +0000 (-0700) Subject: Merge branch 'bpf-reduce-verifier-stack-frame-size' X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=03fe01ddd1d8be7799419ea5e5f228a0186ae8c2;p=thirdparty%2Flinux.git Merge branch 'bpf-reduce-verifier-stack-frame-size' Yonghong Song says: ==================== bpf: Reduce verifier stack frame size Arnd Bergmann reported an issue ([1]) where clang compiler (less than llvm18) may trigger an error where the stack frame size exceeds the limit. I can reproduce the error like below: kernel/bpf/verifier.c:24491:5: error: stack frame size (2552) exceeds limit (1280) in 'bpf_check' [-Werror,-Wframe-larger-than] kernel/bpf/verifier.c:19921:12: error: stack frame size (1368) exceeds limit (1280) in 'do_check' [-Werror,-Wframe-larger-than] This patch series fixed the above two errors by reducing stack size. See each individual patches for details. [1] https://lore.kernel.org/bpf/20250620113846.3950478-1-arnd@kernel.org/ Changelogs: v2 -> v3: - v2: https://lore.kernel.org/bpf/20250702171134.2370432-1-yonghong.song@linux.dev/ - Rename env->callchain to env->callchain_buf so it is clear that - env->callchain_buf is used for a temp buf. v1 -> v2: - v1: https://lore.kernel.org/bpf/20250702053332.1991516-1-yonghong.song@linux.dev/ - Simplify assignment to struct bpf_insn pointer in do_misc_fixups(). - Restore original implementation in opt_hard_wire_dead_code_branches() as only one insn on the stack. - Avoid unnecessary insns for 64bit modulo (mod 0/-1) operations. ==================== Link: https://patch.msgid.link/20250703141101.1482025-1-yonghong.song@linux.dev Signed-off-by: Alexei Starovoitov --- 03fe01ddd1d8be7799419ea5e5f228a0186ae8c2