The BPF interpreter and all JIT compilers, except RISC-V's and MIPS', enforce a 33-tail calls limit at runtime. Because of this discrepancy, a BPF program can have a different behavior and output depending on whether it is interpreted or JIT compiled, or depending on the underlying architecture. This patchset changes the RISC-V and MIPS JIT compilers to limit tail calls to 33 instead of 32. I have checked other BPF JIT compilers for the same discrepancy. Paul Chaignon (2): bpf, riscv: limit to 33 tail calls bpf, mips: limit to 33 tail calls arch/mips/net/ebpf_jit.c | 9 +++++---- arch/riscv/net/bpf_jit_comp.c | 4 ++-- 2 files changed, 7 insertions(+), 6 deletions(-) -- 2.17.1