This patchset fixes a tailcall hierarchy issue. The issue is confirmed in the discussions of "bpf, x64: Fix tailcall infinite loop"[0]. For resolving details, please read the next patch. Currently, I only resolve this issue on x86. The ones on arm64, s390x and loongarch are waiting to be resolved too. So, the ci pipeline fails to run for this issue fixing. [0] https://lore.kernel.org/bpf/6203dd01-789d-f02c-5293-def4c1b18aef@xxxxxxxxx/ Leon Hwang (3): bpf, x64: Fix tailcall hierarchy bpf, x64: Load tail_call_cnt pointer selftests/bpf: Add testcases for tailcall hierarchy fixing arch/x86/net/bpf_jit_comp.c | 136 ++++--- .../selftests/bpf/prog_tests/tailcalls.c | 384 ++++++++++++++++++ .../bpf/progs/tailcall_bpf2bpf_hierarchy1.c | 34 ++ .../bpf/progs/tailcall_bpf2bpf_hierarchy2.c | 55 +++ .../bpf/progs/tailcall_bpf2bpf_hierarchy3.c | 46 +++ 5 files changed, 603 insertions(+), 52 deletions(-) create mode 100644 tools/testing/selftests/bpf/progs/tailcall_bpf2bpf_hierarchy1.c create mode 100644 tools/testing/selftests/bpf/progs/tailcall_bpf2bpf_hierarchy2.c create mode 100644 tools/testing/selftests/bpf/progs/tailcall_bpf2bpf_hierarchy3.c base-commit: 2e7e9faf9a5d46788bf7a4d07c6c1caf57367d23 -- 2.41.0