From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from proxy.6wind.com (host.76.145.23.62.rev.coltfrance.com [62.23.145.76]) by dpdk.org (Postfix) with ESMTP id 1AA5E1094 for ; Wed, 22 Mar 2017 10:48:33 +0100 (CET) Received: from 6wind.com (unknown [10.16.0.184]) by proxy.6wind.com (Postfix) with SMTP id DBD9A257E5; Wed, 22 Mar 2017 10:48:26 +0100 (CET) Received: by 6wind.com (sSMTP sendmail emulation); Wed, 22 Mar 2017 10:48:24 +0100 From: Pascal Mazon To: keith.wiles@intel.com Cc: dev@dpdk.org, Pascal Mazon Date: Wed, 22 Mar 2017 10:48:17 +0100 Message-Id: X-Mailer: git-send-email 2.12.0.306.g4a9b9b3 In-Reply-To: References: Subject: [dpdk-dev] [PATCH v6 0/4] net/tap: support flow API X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 22 Mar 2017 09:48:33 -0000 This series add support for the flow API in tap PMD. It enables filtering specific packets incoming on the tap netdevice, to process only desired ones. Under the hood, it uses kernel TC (traffic control), which takes place very early in the stack, and supports most common pattern items and actions defined in the flow API. v6 changes: - fix compilation issue on i686 (wrong cast for rte flow handle) v5 changes: - rebase after adrien's patches on Tx poll and Rx signaling - better spaces for comments in rte_eth_tap.h v4 changes: - rebase on top of "net/tap: add additional management ops" series - fix a few netlink doxygen comments - rename tap.h -> rte_eth_tap.h - flush flow rules only when applicable v3 changes: - vlan patterns enabled depending on running kernel (4.9+) - update doc/guides/nics/tap.rst for Flow API support - rebase on top of "net/tap: add additional management ops" series v2 changes: - support compilation on kernels < 4.2 (where flower support appeared) - set whitespaces in tap.h - remove unnecessary goto Pascal Mazon (4): net/tap: move private elements to external header net/tap: add preliminary support for rte_flow net/tap: add netlink back-end for flow API net/tap: add basic flow API patterns and actions doc/guides/nics/features/tap.ini | 1 + doc/guides/nics/tap.rst | 23 + drivers/net/tap/Makefile | 44 ++ drivers/net/tap/rte_eth_tap.c | 101 ++-- drivers/net/tap/rte_eth_tap.h | 80 +++ drivers/net/tap/tap_flow.c | 1070 ++++++++++++++++++++++++++++++++++++++ drivers/net/tap/tap_flow.h | 58 +++ drivers/net/tap/tap_netlink.c | 367 +++++++++++++ drivers/net/tap/tap_netlink.h | 69 +++ drivers/net/tap/tap_tcmsgs.c | 378 ++++++++++++++ drivers/net/tap/tap_tcmsgs.h | 63 +++ 11 files changed, 2219 insertions(+), 35 deletions(-) create mode 100644 drivers/net/tap/rte_eth_tap.h create mode 100644 drivers/net/tap/tap_flow.c create mode 100644 drivers/net/tap/tap_flow.h create mode 100644 drivers/net/tap/tap_netlink.c create mode 100644 drivers/net/tap/tap_netlink.h create mode 100644 drivers/net/tap/tap_tcmsgs.c create mode 100644 drivers/net/tap/tap_tcmsgs.h -- 2.12.0.306.g4a9b9b3