]> git.baikalelectronics.ru Git - kernel.git/commit
net: veth: Account total xdp_frame len running ndo_xdp_xmit
authorLorenzo Bianconi <lorenzo@kernel.org>
Fri, 11 Mar 2022 09:14:18 +0000 (10:14 +0100)
committerDaniel Borkmann <daniel@iogearbox.net>
Thu, 17 Mar 2022 19:33:52 +0000 (20:33 +0100)
commit1deff9fe14ccca3b122e32f81dd8949de9327b62
tree5c43ec4b1efc07fee6947108900173ec562c9dea
parent1e3b4e6dd82cd5d4c3db4c1497177d5358369d27
net: veth: Account total xdp_frame len running ndo_xdp_xmit

Even if this is a theoretical issue since it is not possible to perform
XDP_REDIRECT on a non-linear xdp_frame, veth driver does not account
paged area in ndo_xdp_xmit function pointer.
Introduce xdp_get_frame_len utility routine to get the xdp_frame full
length and account total frame size running XDP_REDIRECT of a
non-linear xdp frame into a veth device.

Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Acked-by: Toke Hoiland-Jorgensen <toke@redhat.com>
Acked-by: John Fastabend <john.fastabend@gmail.com>
Link: https://lore.kernel.org/bpf/54f9fd3bb65d190daf2c0bbae2f852ff16cfbaa0.1646989407.git.lorenzo@kernel.org
drivers/net/veth.c
include/net/xdp.h