aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/bpf/verifier.c
diff options
context:
space:
mode:
authorSandipan Das <sandipan@linux.ibm.com>2018-12-03 17:51:04 +0530
committerDaniel Borkmann <daniel@iogearbox.net>2018-12-03 23:47:05 +0100
commit025dceb0fab31c912c41b8f32577432231d83e6b (patch)
tree7dfeb7ee36398be26b8c69c288cbdfa19ad36250 /kernel/bpf/verifier.c
parentbpf: refactor bpf_test_run() to separate own failures and test program result (diff)
downloadlinux-dev-025dceb0fab31c912c41b8f32577432231d83e6b.tar.xz
linux-dev-025dceb0fab31c912c41b8f32577432231d83e6b.zip
bpf: powerpc64: optimize JIT passes for bpf function calls
Once the JITed images for each function in a multi-function program are generated after the first three JIT passes, we only need to fix the target address for the branch instruction corresponding to each bpf-to-bpf function call. This introduces the following optimizations for reducing the work done by the JIT compiler when handling multi-function programs: [1] Instead of doing two extra passes to fix the bpf function calls, do just one as that would be sufficient. [2] During the extra pass, only overwrite the instruction sequences for the bpf-to-bpf function calls as everything else would still remain exactly the same. This also reduces the number of writes to the JITed image. [3] Do not regenerate the prologue and the epilogue during the extra pass as that would be redundant. Signed-off-by: Sandipan Das <sandipan@linux.ibm.com> Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Diffstat (limited to '')
0 files changed, 0 insertions, 0 deletions