diff options
author | Alexei Starovoitov <ast@plumgrid.com> | 2015-07-20 20:34:19 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2015-07-20 20:52:32 -0700 |
commit | 4d9c5c53ac99e4cb5d031897863203d7817b36e0 (patch) | |
tree | 0eeec6acd33f939f37b4b67722b4588d5a88b304 /kernel/bpf | |
parent | 4e10df9a60d96ced321dd2af71da558c6b750078 (diff) | |
download | op-kernel-dev-4d9c5c53ac99e4cb5d031897863203d7817b36e0.zip op-kernel-dev-4d9c5c53ac99e4cb5d031897863203d7817b36e0.tar.gz |
test_bpf: add bpf_skb_vlan_push/pop() tests
improve accuracy of timing in test_bpf and add two stress tests:
- {skb->data[0], get_smp_processor_id} repeated 2k times
- {skb->data[0], vlan_push} x 68 followed by {skb->data[0], vlan_pop} x 68
1st test is useful to test performance of JIT implementation of BPF_LD_ABS
together with BPF_CALL instructions.
2nd test is stressing skb_vlan_push/pop logic together with skb->data access
via BPF_LD_ABS insn which checks that re-caching of skb->data is done correctly.
In order to call bpf_skb_vlan_push() from test_bpf.ko have to add
three export_symbol_gpl.
Signed-off-by: Alexei Starovoitov <ast@plumgrid.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'kernel/bpf')
-rw-r--r-- | kernel/bpf/core.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/kernel/bpf/core.c b/kernel/bpf/core.c index bf38f5e..fafa741 100644 --- a/kernel/bpf/core.c +++ b/kernel/bpf/core.c @@ -177,6 +177,7 @@ noinline u64 __bpf_call_base(u64 r1, u64 r2, u64 r3, u64 r4, u64 r5) { return 0; } +EXPORT_SYMBOL_GPL(__bpf_call_base); /** * __bpf_prog_run - run eBPF program on a given context |