• Leon Hwang's avatar
    bpf: Fix tailcall cases in test_bpf · d65f3767
    Leon Hwang authored
    Since f663a03c ("bpf, x64: Remove tail call detection"),
    tail_call_reachable won't be detected in x86 JIT. And, tail_call_reachable
    is provided by verifier.
    
    Therefore, in test_bpf, the tail_call_reachable must be provided in test
    cases before running.
    
    Fix and test:
    
    [  174.828662] test_bpf: #0 Tail call leaf jited:1 170 PASS
    [  174.829574] test_bpf: #1 Tail call 2 jited:1 244 PASS
    [  174.830363] test_bpf: #2 Tail call 3 jited:1 296 PASS
    [  174.830924] test_bpf: #3 Tail call 4 jited:1 719 PASS
    [  174.831863] test_bpf: #4 Tail call load/store leaf jited:1 197 PASS
    [  174.832240] test_bpf: #5 Tail call load/store jited:1 326 PASS
    [  174.832240] test_bpf: #6 Tail call error path, max count reached jited:1 2214 PASS
    [  174.835713] test_bpf: #7 Tail call count preserved across function calls jited:1 609751 PASS
    [  175.446098] test_bpf: #8 Tail call error path, NULL target jited:1 472 PASS
    [  175.447597] test_bpf: #9 Tail call error path, index out of range jited:1 206 PASS
    [  175.448833] test_bpf: test_tail_calls: Summary: 10 PASSED, 0 FAILED, [10/10 JIT'ed]
    Reported-by: default avatarkernel test robot <oliver.sang@intel.com>
    Closes: https://lore.kernel.org/oe-lkp/202406251415.c51865bc-oliver.sang@intel.com
    Fixes: f663a03c ("bpf, x64: Remove tail call detection")
    Signed-off-by: default avatarLeon Hwang <hffilwlqm@gmail.com>
    Link: https://lore.kernel.org/r/20240625145351.40072-1-hffilwlqm@gmail.comSigned-off-by: default avatarAlexei Starovoitov <ast@kernel.org>
    d65f3767
test_bpf.c 364 KB