From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jesper Dangaard Brouer Subject: [bpf-next V2 PATCH 0/3] bpf/xdp: fix generic-XDP and demonstrate VLAN manipulation Date: Tue, 09 Oct 2018 12:04:37 +0200 Message-ID: <153907945478.9484.16223890803803124822.stgit@firesoul> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Cc: liu.song.a23@gmail.com, Daniel Borkmann , yoel@kviknet.dk, Alexei Starovoitov , John Fastabend To: netdev@vger.kernel.org, Jesper Dangaard Brouer Return-path: Received: from mx1.redhat.com ([209.132.183.28]:49766 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726160AbeJIRUt (ORCPT ); Tue, 9 Oct 2018 13:20:49 -0400 Sender: netdev-owner@vger.kernel.org List-ID: While implementing PoC building blocks for eBPF code XDP+TC that can manipulate VLANs headers, I discovered a bug in generic-XDP. The fix should be backported to stable kernels. Even-though generic-XDP was introduced in v4.12, I think the bug is not exposed until v4.14 in the mentined fixes commit. --- Jesper Dangaard Brouer (3): net: fix generic XDP to handle if eth header was mangled bpf: make TC vlan bpf_helpers avail to selftests selftests/bpf: add XDP selftests for modifying and popping VLAN headers net/core/dev.c | 14 + tools/testing/selftests/bpf/Makefile | 6 - tools/testing/selftests/bpf/bpf_helpers.h | 4 tools/testing/selftests/bpf/test_xdp_vlan.c | 292 ++++++++++++++++++++++++++ tools/testing/selftests/bpf/test_xdp_vlan.sh | 195 +++++++++++++++++ 5 files changed, 509 insertions(+), 2 deletions(-) create mode 100644 tools/testing/selftests/bpf/test_xdp_vlan.c create mode 100755 tools/testing/selftests/bpf/test_xdp_vlan.sh