test_bpf: add bpf_skb_vlan_push/pop() tests
authorAlexei Starovoitov <ast@plumgrid.com>
Tue, 21 Jul 2015 03:34:19 +0000 (20:34 -0700)
committerDavid S. Miller <davem@davemloft.net>
Tue, 21 Jul 2015 03:52:32 +0000 (20:52 -0700)
commit4d9c5c53ac99e4cb5d031897863203d7817b36e0
tree0eeec6acd33f939f37b4b67722b4588d5a88b304
parent4e10df9a60d96ced321dd2af71da558c6b750078
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>
kernel/bpf/core.c
lib/test_bpf.c
net/core/filter.c