summaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/mellanox/mlx4
diff options
context:
space:
mode:
authorNikita V. Shirokov2018-04-18 06:42:15 +0200
committerDaniel Borkmann2018-04-18 23:34:16 +0200
commite5e0a59b7cd17244cb0c1d87112b0c9e5e2bfb39 (patch)
tree7db8c12d2522c442d825e46d966329a051a90274 /drivers/net/ethernet/mellanox/mlx4
parentbpf: make generic xdp compatible w/ bpf_xdp_adjust_tail (diff)
downloadkernel-qcow2-linux-e5e0a59b7cd17244cb0c1d87112b0c9e5e2bfb39.tar.gz
kernel-qcow2-linux-e5e0a59b7cd17244cb0c1d87112b0c9e5e2bfb39.tar.xz
kernel-qcow2-linux-e5e0a59b7cd17244cb0c1d87112b0c9e5e2bfb39.zip
bpf: make mlx4 compatible w/ bpf_xdp_adjust_tail
w/ bpf_xdp_adjust_tail helper xdp's data_end pointer could be changed as well (only "decrease" of pointer's location is going to be supported). changing of this pointer will change packet's size. for mlx4 driver we will just calculate packet's length unconditionally (the same way as it's already being done in mlx5) Acked-by: Alexei Starovoitov <ast@kernel.org> Acked-by: Tariq Toukan <tariqt@mellanox.com> Signed-off-by: Nikita V. Shirokov <tehnerd@tehnerd.com> Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Diffstat (limited to 'drivers/net/ethernet/mellanox/mlx4')
-rw-r--r--drivers/net/ethernet/mellanox/mlx4/en_rx.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/ethernet/mellanox/mlx4/en_rx.c b/drivers/net/ethernet/mellanox/mlx4/en_rx.c
index 5c613c6663da..efc55feddc5c 100644
--- a/drivers/net/ethernet/mellanox/mlx4/en_rx.c
+++ b/drivers/net/ethernet/mellanox/mlx4/en_rx.c
@@ -775,8 +775,8 @@ int mlx4_en_process_rx_cq(struct net_device *dev, struct mlx4_en_cq *cq, int bud
act = bpf_prog_run_xdp(xdp_prog, &xdp);
+ length = xdp.data_end - xdp.data;
if (xdp.data != orig_data) {
- length = xdp.data_end - xdp.data;
frags[0].page_offset = xdp.data -
xdp.data_hard_start;
va = xdp.data;