Lorenzo Bianconi 65e6dcf733 net, veth: Alloc skb in bulk for ndo_xdp_xmit
Split ndo_xdp_xmit and ndo_start_xmit use cases in veth_xdp_rcv routine
in order to alloc skbs in bulk for XDP_PASS verdict.

Introduce xdp_alloc_skb_bulk utility routine to alloc skb bulk list.
The proposed approach has been tested in the following scenario:

eth (ixgbe) --> XDP_REDIRECT --> veth0 --> (remote-ns) veth1 --> XDP_PASS

XDP_REDIRECT: xdp_redirect_map bpf sample
XDP_PASS: xdp_rxq_info bpf sample

traffic generator: pkt_gen sending udp traffic on a remote device

bpf-next master: ~3.64Mpps
bpf-next + skb bulking allocation: ~3.79Mpps

Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Reviewed-by: Toshiaki Makita <toshiaki.makita1@gmail.com>
Acked-by: Jesper Dangaard Brouer <brouer@redhat.com>
Link: https://lore.kernel.org/bpf/a14a30d3c06fff24e13f836c733d80efc0bd6eb5.1611957532.git.lorenzo@kernel.org
2021-02-04 01:00:07 +01:00
..
2020-12-18 12:38:28 -08:00
2020-12-16 16:38:41 -08:00
2020-12-24 12:18:11 -08:00
2020-12-07 10:08:14 +01:00
2020-12-15 16:06:14 -08:00
2020-12-02 22:35:44 +01:00
2021-01-01 12:58:07 -08:00
2020-12-20 10:44:05 -08:00
2021-01-05 15:50:36 -08:00
2021-01-03 14:54:44 -07:00
2020-12-09 19:26:02 -06:00
2020-12-16 16:38:41 -08:00
2020-12-16 13:34:31 -08:00
2020-12-15 15:57:25 -08:00
2020-12-15 14:02:26 -08:00
2020-12-25 20:17:40 -08:00
2020-12-23 15:06:22 -08:00
2020-12-15 22:50:12 +11:00
2020-12-19 11:51:32 -08:00
2020-12-16 16:38:41 -08:00
2020-12-16 16:38:41 -08:00
2020-12-20 10:12:06 -08:00
2020-12-17 13:41:27 -08:00
2020-12-10 10:45:36 +01:00
2020-12-16 16:38:41 -08:00
2021-01-16 11:00:08 -08:00
2020-12-20 10:44:05 -08:00
2020-12-18 12:38:28 -08:00
2020-12-09 19:44:34 +01:00
2020-12-23 15:01:49 -08:00
2021-01-15 10:52:00 -08:00