On 06/14/2017 12:28 AM, David Daney wrote:
Since the eBPF machine has 64-bit registers, we only support this in 64-bit kernels. As of the writing of this commit log test-bpf is showing: test_bpf: Summary: 316 PASSED, 0 FAILED, [308/308 JIT'ed] All current test cases are successfully compiled. Many examples in samples/bpf are usable, specifically tracex5 which uses tail calls works. Signed-off-by: David Daney <david.daney@xxxxxxxxxx>
Awesome work, David! The bits interacting with core BPF look good to me. Fyi, when Ralf merges this and it goes later on to Linus, there will be two minor (silent) merge conflicts with net-next tree (depending which one gets there first): 1) In bpf_int_jit_compile(), below the jited = 1 assignment, there needs to come a prog->jited_len = image_size. 2) The internal tail call opcode changed from BPF_JMP | BPF_CALL | BPF_X into BPF_JMP | BPF_TAIL_CALL. Cheers, Daniel