kernel-selftests: make run_tests -C bpf cost 5 hours

From: Zhou, Jie2X
Date: Mon Nov 29 2021 - 02:38:52 EST


hi,

I have tested v5.16-rc1 kernel bpf function by make run_tests -C tools/testing/selftests/bpf.
And found it cost above 5 hours.

Check dmesg and found that lib/test_bpf.ko cost so much time.
In tools/testing/selftests/bpf/test_kmod.sh insmod test_bpf.ko four times.
It took 40 seconds for the first three times.

When do 4th test among 1009 test cases from #812 ALU64_AND_K to #936 JMP_JSET_K every test case cost above 1 min.
Is it currently to cost so much time?

kern :info : [ 1127.985791] test_bpf: #811 ALU64_MOV_K: all immediate value magnitudes
kern :info : [ 1237.158485] test_bpf: #812 ALU64_AND_K: all immediate value magnitudes jited:1 127955 PASS
kern :info : [ 1341.638557] test_bpf: #813 ALU64_OR_K: all immediate value magnitudes jited:1 155039 PASS
kern :info : [ 1447.725483] test_bpf: #814 ALU64_XOR_K: all immediate value magnitudes jited:1 129621 PASS
kern :info : [ 1551.808683] test_bpf: #815 ALU64_ADD_K: all immediate value magnitudes jited:1 120428 PASS
kern :info : [ 1655.550594] test_bpf: #816 ALU64_SUB_K: all immediate value magnitudes jited:1 175712 PASS
......
kern :info : [16725.824950] test_bpf: #931 JMP32_JLE_X: all register value magnitudes jited:1 216508 PASS
kern :info : [16911.555675] test_bpf: #932 JMP32_JSGT_X: all register value magnitudes jited:1 178367 PASS
kern :info : [17101.466163] test_bpf: #933 JMP32_JSGE_X: all register value magnitudes jited:1 191436 PASS
kern :info : [17288.359154] test_bpf: #934 JMP32_JSLT_X: all register value magnitudes jited:1 165714 PASS
kern :info : [17480.615048] test_bpf: #935 JMP32_JSLE_X: all register value magnitudes jited:1 172846 PASS
kern :info : [17667.472140] test_bpf: #936 JMP_JSET_K: imm = 0 -> never taken jited:1 14 PASS

test_bpf.ko dmesg output is attached.

best regards,

Attachment: bpf.test
Description: bpf.test