[dpdk-dev] [PATCH 1/2] testpmd: add forwarding mode to simulate a noisy neighbour

2018-04-19 Thread Jens Freimann
This adds a new forwarding mode to testpmd to simulate more realistic behavior of a guest machine engaged in receiving and sending packets performing Virtual Network Function (VNF). The goal is to enable a simple way of measuring performance impact on cache and memory footprint utilization from va

[dpdk-dev] [PATCH 2/2] testpmd: update testpmd documentation to include noisy forwarding mode

2018-04-19 Thread Jens Freimann
Signed-off-by: Jens Freimann --- doc/guides/testpmd_app_ug/run_app.rst | 27 +++ doc/guides/testpmd_app_ug/testpmd_funcs.rst | 7 +-- 2 files changed, 32 insertions(+), 2 deletions(-) diff --git a/doc/guides/testpmd_app_ug/run_app.rst b/doc/guides/testpmd_app_

[dpdk-dev] [PATCH v4 02/20] net/virtio: add virtio 1.1 defines

2018-04-19 Thread Jens Freimann
Signed-off-by: Jens Freimann --- drivers/net/virtio/virtio_ring.h | 4 1 file changed, 4 insertions(+) diff --git a/drivers/net/virtio/virtio_ring.h b/drivers/net/virtio/virtio_ring.h index cea4d441e..76168eed7 100644 --- a/drivers/net/virtio/virtio_ring.h +++ b/drivers/net/virtio/virtio_ri

[dpdk-dev] [PATCH v4 01/20] net/virtio: vring init for packed queues

2018-04-19 Thread Jens Freimann
Add and initialize descriptor data structures. Signed-off-by: Jens Freimann --- drivers/net/virtio/virtio_ethdev.c | 22 --- drivers/net/virtio/virtio_pci.h| 8 ++ drivers/net/virtio/virtio_ring.h | 55 ++ drivers/net/virtio/virtqueue.h

[dpdk-dev] [PATCH v4 03/20] net/virtio: add packed virtqueue helpers

2018-04-19 Thread Jens Freimann
Add helper functions to set/clear and check descriptor flags. Signed-off-by: Jens Freimann --- drivers/net/virtio/virtio_ring.h | 38 ++ drivers/net/virtio/virtqueue.h | 19 +++ 2 files changed, 57 insertions(+) diff --git a/drivers/net/virt

[dpdk-dev] [PATCH v4 00/20] implement packed virtqueues

2018-04-19 Thread Jens Freimann
This is a basic implementation of packed virtqueues as specified in the Virtio 1.1 draft. A compiled version of the current draft is available at https://github.com/oasis-tcs/virtio-docs.git (or as .pdf at https://github.com/oasis-tcs/virtio-docs/blob/master/virtio-v1.1-packed-wd10.pdf It does not

[dpdk-dev] [PATCH v4 04/20] net/virtio: flush packed receive virtqueues

2018-04-19 Thread Jens Freimann
Flush used descriptors in packed receive virtqueue. As descriptors can be chained we need to look at the stored number of used descriptors to find out the length of the chain. Signed-off-by: Jens Freimann --- drivers/net/virtio/virtqueue.c | 16 1 file changed, 16 insertions(+)

[dpdk-dev] [PATCH v4 07/20] net/virtio: implement transmit path for packed queues

2018-04-19 Thread Jens Freimann
This implements the transmit path for devices with support for Virtio 1.1. Add the feature bit for Virtio 1.1 and enable code to add buffers to vring and mark descriptors as available. This is based on a patch by Yuanhan Liu. Signed-off-by: Jens Freiman --- drivers/net/virtio/virtio_ethdev.c |

[dpdk-dev] [PATCH v4 06/20] net/virtio-user: add option to use packed queues

2018-04-19 Thread Jens Freimann
From: Yuanhan Liu Add option to enable packed queue support for virtio-user devices. Signed-off-by: Yuanhan Liu --- drivers/net/virtio/virtio_user/virtio_user_dev.c | 6 +- drivers/net/virtio/virtio_user/virtio_user_dev.h | 3 ++- drivers/net/virtio/virtio_user_ethdev.c | 15 +++

[dpdk-dev] [PATCH v4 05/20] net/virtio: dump packed virtqueue data

2018-04-19 Thread Jens Freimann
Add support to dump packed virtqueue data to the VIRTQUEUE_DUMP() macro. Signed-off-by: Jens Freimann --- drivers/net/virtio/virtqueue.h | 6 ++ 1 file changed, 6 insertions(+) diff --git a/drivers/net/virtio/virtqueue.h b/drivers/net/virtio/virtqueue.h index 081b27a52..ea804c9c7 100644 ---

[dpdk-dev] [PATCH v4 08/20] net/virtio: implement receive path for packed queues

2018-04-19 Thread Jens Freimann
From: Yuanhan Liu Implement the receive part here. No support for mergeable buffers yet. Signed-off-by: Jens Freimann Signed-off-by: Yuanhan Liu --- drivers/net/virtio/virtio_ethdev.c | 14 +++- drivers/net/virtio/virtio_ethdev.h | 2 + drivers/net/virtio/virtio_rxtx.c | 137

[dpdk-dev] [PATCH v4 09/20] net/virtio: add virtio send command packed queue support

2018-04-19 Thread Jens Freimann
Use packed virtqueue format when reading and writing descriptors to/from the ring. Signed-off-by: Jens Freimann --- drivers/net/virtio/virtio_ethdev.c | 75 ++ 1 file changed, 75 insertions(+) diff --git a/drivers/net/virtio/virtio_ethdev.c b/drivers/net/vir

[dpdk-dev] [PATCH v4 12/20] vhost: add virtio packed virtqueue defines

2018-04-19 Thread Jens Freimann
Signed-off-by: Jens Freimann --- lib/librte_vhost/vhost.h | 4 lib/librte_vhost/virtio-packed.h | 22 ++ 2 files changed, 26 insertions(+) create mode 100644 lib/librte_vhost/virtio-packed.h diff --git a/lib/librte_vhost/vhost.h b/lib/librte_vhost/vhost.h index

[dpdk-dev] [PATCH v4 11/20] net/virtio: add support for event suppression

2018-04-19 Thread Jens Freimann
Signed-off-by: Jens Freimann --- drivers/net/virtio/virtio_ethdev.c | 2 +- drivers/net/virtio/virtio_rxtx.c | 15 +++- drivers/net/virtio/virtqueue.h | 77 -- 3 files changed, 89 insertions(+), 5 deletions(-) diff --git a/drivers/net/virtio/virtio_

[dpdk-dev] [PATCH v4 10/20] net/virtio: add support for mergeable buffers with packed virtqueues

2018-04-19 Thread Jens Freimann
Implement support for receiving merged buffers in virtio when packed virtqueues are enabled. Signed-off-by: Jens Freimann --- drivers/net/virtio/virtio_ethdev.c | 14 ++--- drivers/net/virtio/virtio_rxtx.c | 103 ++--- drivers/net/virtio/virtqueue.h | 1 +

[dpdk-dev] [PATCH v4 13/20] vhost: add helpers for packed virtqueues

2018-04-19 Thread Jens Freimann
Add some helper functions to set/check descriptor flags and toggle the used wrap counter. Signed-off-by: Jens Freimann --- lib/librte_vhost/virtio-packed.h | 64 1 file changed, 64 insertions(+) diff --git a/lib/librte_vhost/virtio-packed.h b/lib/librte_

[dpdk-dev] [PATCH v4 15/20] vhost: dequeue for packed queues

2018-04-19 Thread Jens Freimann
Implement code to dequeue and process descriptors from the vring if VIRTIO_F_RING_PACKED is enabled. Check if descriptor was made available by driver by looking at VIRTIO_F_DESC_AVAIL flag in descriptor. If so dequeue and set the used flag VIRTIO_F_DESC_USED to the current value of the used wrap c

[dpdk-dev] [PATCH v4 14/20] vhost: vring address setup for packed queues

2018-04-19 Thread Jens Freimann
From: Yuanhan Liu Add code to set up packed queues when enabled. Signed-off-by: Yuanhan Liu Signed-off-by: Jens Freimann --- lib/librte_vhost/vhost.h | 2 ++ lib/librte_vhost/vhost_user.c | 23 ++- 2 files changed, 24 insertions(+), 1 deletion(-) diff --git a/lib/li

[dpdk-dev] [PATCH v4 16/20] vhost: packed queue enqueue path

2018-04-19 Thread Jens Freimann
Implement enqueue of packets to the receive virtqueue. Set descriptor flag VIRTQ_DESC_F_USED and toggle used wrap counter if last descriptor in ring is used. Perform a write memory barrier before flags are written to descriptor. Chained descriptors are not supported with this patch. Signed-off-b

[dpdk-dev] [PATCH v4 17/20] vhost: add support for mergeable buffers with packed virtqueues

2018-04-19 Thread Jens Freimann
Signed-off-by: Jens Freimann --- lib/librte_vhost/virtio_net.c | 143 ++ 1 file changed, 116 insertions(+), 27 deletions(-) diff --git a/lib/librte_vhost/virtio_net.c b/lib/librte_vhost/virtio_net.c index 1c7664a7d..e6e75f9a3 100644 --- a/lib/librte_vhost/

[dpdk-dev] [PATCH v4 18/20] vhost: add event suppression for packed queues

2018-04-19 Thread Jens Freimann
Signed-off-by: Jens Freimann --- lib/librte_vhost/vhost.c | 15 +++ lib/librte_vhost/vhost.h | 63 --- lib/librte_vhost/vhost_user.c | 22 +++ lib/librte_vhost/virtio_net.c | 15 ++- 4 files changed, 98 insertions(+), 1

[dpdk-dev] [PATCH v4 19/20] net/virtio: by default disable packed virtqueues

2018-04-19 Thread Jens Freimann
Disable packed virtqueues for now and make it dependend on a build-time config option. This can be reverted once we have missing features like indirect descriptors implemented. Signed-off-by: Jens Freimann --- config/common_base | 1 + drivers/net/virtio/virtio_ethdev.c | 14 +++

[dpdk-dev] [PATCH v4 20/20] vhost: by default disable packed virtqueues

2018-04-19 Thread Jens Freimann
From: Yuanhan Liu Add a built-time config option to enable packed virtqueues. This config option activates the code do enqueue and dequeue packed to/from a packed virtqueue. Add feature bit for packed virtqueues as defined in Virtio 1.1 draft. Signed-off-by: Jens Freimann Signed-off-by: Yuanha

Re: [dpdk-dev] kernel binding of devices + hotplug

2018-04-19 Thread Thomas Monjalon
19/04/2018 08:04, Alejandro Lucero: > I do not completely understand the discussion, but I think the disagreement > is due to how some devices interact with DPDK, at least Mellanox ones. I'm > saying that because we have a DPDK app which starts with no device at all > (--no-pci) and it relies on de

Re: [dpdk-dev] [PATCH] examples/ip_pipeline: fix buffer not null terminated

2018-04-19 Thread Singh, Jasvinder
> -Original Message- > From: Pattan, Reshma > Sent: Wednesday, April 18, 2018 5:58 PM > To: dev@dpdk.org > Cc: Singh, Jasvinder ; Pattan, Reshma > > Subject: [PATCH] examples/ip_pipeline: fix buffer not null terminated > > Copying source string of length equal to sizeof(profile->name) w

Re: [dpdk-dev] [PATCH] examples/ip_pipipeline: fix resource leak

2018-04-19 Thread Singh, Jasvinder
> -Original Message- > From: Pattan, Reshma > Sent: Wednesday, April 18, 2018 5:58 PM > To: dev@dpdk.org > Cc: Singh, Jasvinder ; Pattan, Reshma > > Subject: [PATCH] examples/ip_pipipeline: fix resource leak > > Close tap device fd before returning upon failures. > > Coverity issue: 27

Re: [dpdk-dev] [PATCH] examples/ip_pipeline: fixes uninitialized scalar variable

2018-04-19 Thread Singh, Jasvinder
> -Original Message- > From: Pattan, Reshma > Sent: Wednesday, April 18, 2018 5:58 PM > To: dev@dpdk.org > Cc: Singh, Jasvinder ; Pattan, Reshma > > Subject: [PATCH] examples/ip_pipeline: fixes uninitialized scalar variable > > Using uninitialized value p.thread_id when calling kni_crea

Re: [dpdk-dev] [PATCH] examples/ip_pipeline: fix buffer not null terminated

2018-04-19 Thread Singh, Jasvinder
> -Original Message- > From: Pattan, Reshma > Sent: Wednesday, April 18, 2018 5:58 PM > To: dev@dpdk.org > Cc: Singh, Jasvinder ; Pattan, Reshma > > Subject: [PATCH] examples/ip_pipeline: fix buffer not null terminated > > Copying source string of length equal to sizeof(kni->name) will

Re: [dpdk-dev] kernel binding of devices + hotplug

2018-04-19 Thread Bruce Richardson
On Thu, Apr 19, 2018 at 10:24:24AM +0200, Thomas Monjalon wrote: > 19/04/2018 08:04, Alejandro Lucero: > > I do not completely understand the discussion, but I think the > > disagreement is due to how some devices interact with DPDK, at least > > Mellanox ones. I'm saying that because we have a DPD

[dpdk-dev] [PATCH 1/3] examples/l3fwd: convert to SPDX license tags

2018-04-19 Thread gavin . hu
From: Gavin Hu Signed-off-by: Gavin Hu --- examples/l3fwd/l3fwd_common.h | 35 +++ examples/l3fwd/l3fwd_em_hlm.h | 35 +++ examples/l3fwd/l3fwd_em_hlm_neon.h | 35 +++ examples/l3fwd/l3fwd_

[dpdk-dev] [PATCH 2/3] expamples/ip_pipeline: convert to SPDX license tags

2018-04-19 Thread gavin . hu
From: Gavin Hu Signed-off-by: Gavin Hu --- examples/ip_pipeline/hash_func_arm64.h | 33 ++--- 1 file changed, 2 insertions(+), 31 deletions(-) diff --git a/examples/ip_pipeline/hash_func_arm64.h b/examples/ip_pipeline/hash_func_arm64.h index ae6c0f4..5871c33 100644

[dpdk-dev] [PATCH 0/3] convert to SPDX-3 clause license tag

2018-04-19 Thread gavin . hu
From: Gavin Hu Convert to the new SPDX-3 clause license tag for the files with Linaro Copyright only. Gavin Hu (3): examples/l3fwd: convert to SPDX license tags expamples/ip_pipeline: convert to SPDX license tags drivers: convert to SPDX license tags drivers/net/i40e/i40e_rxtx_vec_neon.c

[dpdk-dev] [PATCH 3/3] drivers: convert to SPDX license tags

2018-04-19 Thread gavin . hu
From: Gavin Hu Signed-off-by: Gavin Hu --- drivers/net/i40e/i40e_rxtx_vec_neon.c | 35 +++ 1 file changed, 3 insertions(+), 32 deletions(-) diff --git a/drivers/net/i40e/i40e_rxtx_vec_neon.c b/drivers/net/i40e/i40e_rxtx_vec_neon.c index e549d1e..e7e5321 100644

Re: [dpdk-dev] [PATCH 0/2] add MRVL MVPP2 PMD to meson

2018-04-19 Thread Tomasz Duszynski
On Wed, Apr 18, 2018 at 04:02:30PM +0100, Bruce Richardson wrote: > On Fri, Apr 13, 2018 at 05:12:19PM +0100, Bruce Richardson wrote: > > On Wed, Apr 11, 2018 at 01:45:05PM +0200, Tomasz Duszynski wrote: > > > This patchseries adds MRVL MVPP2 PMD to meson build system. > > > > > > Tomasz Duszynski

Re: [dpdk-dev] [PATCH 0/2] add MRVL MVPP2 PMD to meson

2018-04-19 Thread Bruce Richardson
On Thu, Apr 19, 2018 at 10:55:33AM +0200, Tomasz Duszynski wrote: > On Wed, Apr 18, 2018 at 04:02:30PM +0100, Bruce Richardson wrote: > > On Fri, Apr 13, 2018 at 05:12:19PM +0100, Bruce Richardson wrote: > > > On Wed, Apr 11, 2018 at 01:45:05PM +0200, Tomasz Duszynski wrote: > > > > This patchserie

Re: [dpdk-dev] [PATCH v4 1/5] lib/ethdev: support for inline IPsec events

2018-04-19 Thread Anoob Joseph
Hi Thomas, Are these changes fine? Can you review the changes and let me know if you have more comments. Thanks, Anoob On 11/04/18 12:10, Anoob Joseph wrote: Adding support for IPsec events in rte_eth_event framework. In inline IPsec offload, the per packet protocol defined variables, like

Re: [dpdk-dev] [PATCH 1/2] eal: add macro to mark variable mostly read only

2018-04-19 Thread Pavan Nikhilesh
On Wed, Apr 18, 2018 at 07:03:06PM +0100, Ferruh Yigit wrote: > On 4/18/2018 6:55 PM, Pavan Nikhilesh wrote: > > On Wed, Apr 18, 2018 at 06:43:11PM +0100, Ferruh Yigit wrote: > >> On 4/18/2018 4:30 PM, Pavan Nikhilesh wrote: > >>> Add macro to mark a variable to be mostly read only and place it in

Re: [dpdk-dev] [dpdk-web] [PATCH v2] update stable releases roadmap

2018-04-19 Thread Kevin Traynor
On 04/18/2018 02:28 PM, Thomas Monjalon wrote: > 18/04/2018 14:28, Ferruh Yigit: >> On 4/18/2018 10:14 AM, Thomas Monjalon wrote: >>> 18/04/2018 11:05, Ferruh Yigit: On 4/11/2018 12:28 AM, Thomas Monjalon wrote: > - Typically a new stable release version follows a mainline release > -

[dpdk-dev] [PATCH] net/mvpp2: get MUSDK library path from a meson option

2018-04-19 Thread Tomasz Duszynski
Since not cluttering environment and keeping all relevant settings local to the cross build is reasonable get MUSDK library installation path from a meson option. Signed-off-by: Tomasz Duszynski --- drivers/net/mvpp2/meson.build | 2 +- meson_options.txt | 2 ++ 2 files changed, 3 in

Re: [dpdk-dev] kernel binding of devices + hotplug

2018-04-19 Thread Thomas Monjalon
19/04/2018 10:40, Bruce Richardson: > On Thu, Apr 19, 2018 at 10:24:24AM +0200, Thomas Monjalon wrote: > > 19/04/2018 08:04, Alejandro Lucero: > > > I do not completely understand the discussion, but I think the > > > disagreement is due to how some devices interact with DPDK, at least > > > Mellan

Re: [dpdk-dev] [PATCH v4 01/16] ethdev: add error types to flow API

2018-04-19 Thread Adrien Mazarguil
On Wed, Apr 18, 2018 at 10:24:10AM +0100, Ferruh Yigit wrote: > On 4/18/2018 9:41 AM, Adrien Mazarguil wrote: > > On Tue, Apr 17, 2018 at 08:37:31PM +0100, Ferruh Yigit wrote: > >> On 4/16/2018 5:22 PM, Adrien Mazarguil wrote: > >>> These enable more precise reporting of objects responsible for err

Re: [dpdk-dev] [PATCH 0/3] convert to SPDX-3 clause license tag

2018-04-19 Thread Hemant Agrawal
Series-Acked-by: Hemant Agrawal On 4/19/2018 2:22 PM, gavin...@linaro.org wrote: From: Gavin Hu Convert to the new SPDX-3 clause license tag for the files with Linaro Copyright only. Gavin Hu (3): examples/l3fwd: convert to SPDX license tags expamples/ip_pipeline: convert to SPDX licen

[dpdk-dev] [PATCH v6 02/11] net/mlx4: fix ignored RSS hash types

2018-04-19 Thread Adrien Mazarguil
When an unsupported hash type is part of a RSS configuration structure, it is silently ignored instead of triggering an error. This may lead applications to assume that such types are accepted, while they are in fact not part of the resulting flow rules. Fixes: 078b8b452e6b ("net/mlx4: add RSS flo

[dpdk-dev] [PATCH v6 01/11] net/mlx4: fix RSS resource leak in case of error

2018-04-19 Thread Adrien Mazarguil
When memory cannot be allocated for a flow rule, its RSS context reference is not dropped. Fixes: 078b8b452e6b ("net/mlx4: add RSS flow rule action support") Cc: sta...@dpdk.org Signed-off-by: Adrien Mazarguil Acked-by: Nelio Laranjeiro Cc: Shahaf Shuler --- drivers/net/mlx4/mlx4_flow.c | 5 +

[dpdk-dev] [PATCH v6 00/11] Bunch of flow API-related fixes

2018-04-19 Thread Adrien Mazarguil
This series contains several fixes for rte_flow and its implementation in PMDs and testpmd. Upcoming work on the flow API depends on it. v6 changes: - No change, rebased series and updated/fixed commit messages. v5 changes: - No change, rebased series to address conflicts. v4 changes: - Rebas

[dpdk-dev] [PATCH v6 03/11] net/mlx5: fix RSS flow action bounds check

2018-04-19 Thread Adrien Mazarguil
The number of queues provided by the application is not checked against parser's supported maximum. Fixes: 3d821d6fea40 ("net/mlx5: support RSS action flow rule") Cc: sta...@dpdk.org Cc: Nelio Laranjeiro Signed-off-by: Adrien Mazarguil Acked-by: Nelio Laranjeiro --- drivers/net/mlx5/mlx5_flow

[dpdk-dev] [PATCH v6 05/11] app/testpmd: fix flow completion for RSS queues

2018-04-19 Thread Adrien Mazarguil
The lack of a working completion for RSS queues was overlooked during development; until now only "end" was displayed as a valid token. Fixes: 05d34c6e9d2c ("app/testpmd: add queue actions to flow command") Cc: sta...@dpdk.org Signed-off-by: Adrien Mazarguil Cc: Wenzhuo Lu Cc: Jingjing Wu ---

[dpdk-dev] [PATCH v6 04/11] net/bnxt: fix matching of flow API item masks

2018-04-19 Thread Adrien Mazarguil
Some values are interpreted without endian conversion and/or without taking the proper mask into account. Fixes: 5ef3b79fdfe6 ("net/bnxt: support flow filter ops") Cc: sta...@dpdk.org Cc: Ajit Khaparde Signed-off-by: Adrien Mazarguil --- drivers/net/bnxt/bnxt_filter.c | 14 +- 1 fi

[dpdk-dev] [PATCH v6 06/11] app/testpmd: fix lack of flow action configuration

2018-04-19 Thread Adrien Mazarguil
Configuration structure is not optional with flow rule actions that expect one; this pointer is not supposed to be NULL and PMDs should not have to verify it. Like pattern item spec/last/mask fields, it is currently set when at least one configuration parameter is provided on the command line. Thi

[dpdk-dev] [PATCH v6 08/11] app/testpmd: fix missing RSS fields in flow action

2018-04-19 Thread Adrien Mazarguil
Users cannot override the default RSS settings when entering a RSS action, only a list of queues can be provided. This patch enables them to set a RSS hash key and types for a flow rule. Fixes: 05d34c6e9d2c ("app/testpmd: add queue actions to flow command") Cc: sta...@dpdk.org Signed-off-by: Adr

[dpdk-dev] [PATCH v6 07/11] app/testpmd: fix RSS flow action configuration

2018-04-19 Thread Adrien Mazarguil
Except for a list of queues, RSS configuration (hash key and fields) cannot be specified from the flow command line and testpmd does not provide safe defaults either. In order to validate their implementation with testpmd, PMDs had to interpret its NULL RSS configuration parameters somehow, howeve

[dpdk-dev] [PATCH v6 09/11] app/testpmd: fix missing boolean values in flow command

2018-04-19 Thread Adrien Mazarguil
Original implementation lacks the on/off toggle. This patch shows up as a fix because it has been a popular request ever since the first DPDK release with the original implementation but was never addressed. Fixes: abc3d81aca1b ("app/testpmd: add item raw to flow command") Cc: sta...@dpdk.org Si

[dpdk-dev] [PATCH v6 11/11] ethdev: fix missing include in flow API

2018-04-19 Thread Adrien Mazarguil
Fixes: b1a4b4cbc0a8 ("ethdev: introduce generic flow API") Cc: sta...@dpdk.org Signed-off-by: Adrien Mazarguil Acked-by: Nelio Laranjeiro --- lib/librte_ether/rte_flow.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lib/librte_ether/rte_flow.h b/lib/librte_ether/rte_flow.h index 56c7334

[dpdk-dev] [PATCH v6 10/11] ethdev: fix shallow copy of flow API RSS action

2018-04-19 Thread Adrien Mazarguil
The rss_conf field is defined as a pointer to struct rte_eth_rss_conf. Even assuming it is permanently allocated and a pointer copy is safe, pointed data may change and not reflect an applied flow rule anymore. This patch aligns with testpmd by making a deep copy instead. Fixes: 18da437b5f63 ("e

[dpdk-dev] [PATCH v5 01/16] ethdev: add error types to flow API

2018-04-19 Thread Adrien Mazarguil
These enable more precise reporting of objects responsible for errors. This breaks ABI compatibility for the following public functions: - rte_flow_create() - rte_flow_destroy() - rte_flow_error_set() - rte_flow_flush() - rte_flow_isolate() - rte_flow_query() - rte_flow_validate() Signed-off-by:

[dpdk-dev] [PATCH v5 02/16] ethdev: clarify flow API pattern items and actions

2018-04-19 Thread Adrien Mazarguil
Although pattern items and actions examples end with "and so on", these lists include all existing definitions and as a result are updated almost every time new types are added. This is cumbersome and pointless. This patch also synchronizes Doxygen and external API documentation wording with a sli

[dpdk-dev] [PATCH v5 00/16] Flow API overhaul for switch offloads

2018-04-19 Thread Adrien Mazarguil
As summarized in a prior RFC [1], the flow API (rte_flow) was chosen as a means to manage switch offloads supported by many devices (usually going by names such as E-Switch or vSwitch) through user-specified flow rules. Combined with the need to support encap/decap actions, this requires a change

[dpdk-dev] [PATCH v5 03/16] doc: remove flow API migration section

2018-04-19 Thread Adrien Mazarguil
This section has become less relevant since the flow API (rte_flow) is now a mature DPDK API with applications developed directly on top of it instead of an afterthought. This patch removes it for the following reasons: - It has never been updated to track the latest changes in the legacy filte

[dpdk-dev] [PATCH v5 05/16] ethdev: alter behavior of flow API actions

2018-04-19 Thread Adrien Mazarguil
This patch makes the following changes to flow rule actions: - List order now matters, they are redefined as performed first to last instead of "all simultaneously". - Repeated actions are now supported (e.g. specifying QUEUE multiple times now duplicates traffic among them). Previously only

[dpdk-dev] [PATCH v5 04/16] ethdev: remove DUP action from flow API

2018-04-19 Thread Adrien Mazarguil
Upcoming changes in relation to the handling of actions list will make the DUP action redundant as specifying several QUEUE actions will achieve the same behavior. Besides, no PMD implements this action. By removing an entry from enum rte_flow_action_type, this patch breaks ABI compatibility for t

[dpdk-dev] [PATCH v5 06/16] ethdev: remove C99 flexible arrays from flow API

2018-04-19 Thread Adrien Mazarguil
This patch replaces C99-style flexible arrays in struct rte_flow_action_rss and struct rte_flow_item_raw with standard pointers to the same data. They proved difficult to use in the field (e.g. no possibility of static initialization) and unsuitable for C++ applications. Affected PMDs and example

[dpdk-dev] [PATCH v5 07/16] ethdev: flatten RSS configuration in flow API

2018-04-19 Thread Adrien Mazarguil
Since its inception, the rte_flow RSS action has been relying in part on external struct rte_eth_rss_conf for compatibility with the legacy RSS API. This structure lacks parameters such as the hash algorithm to use, and more recently, a method to tell which layer RSS should be performed on [1]. Gi

[dpdk-dev] [PATCH v5 08/16] ethdev: add hash function to RSS flow API action

2018-04-19 Thread Adrien Mazarguil
By definition, RSS involves some kind of hash algorithm, usually Toeplitz. Until now it could not be modified on a flow rule basis and PMDs had to always assume RTE_ETH_HASH_FUNCTION_DEFAULT, which remains the default behavior when unspecified (0). This breaks ABI compatibility for the following

[dpdk-dev] [PATCH v5 11/16] ethdev: limit default VLAN TCI mask in flow API

2018-04-19 Thread Adrien Mazarguil
VLAN TCI is a 16-bit field broken down as PCP (3b), DEI (1b) and VID (12b). The default mask used by PMDs for the VLAN pattern when one isn't provided by the application comprises the entire TCI, which is problematic because most devices only support VID matching. This forces applications to alwa

[dpdk-dev] [PATCH v5 09/16] ethdev: add encap level to RSS flow API action

2018-04-19 Thread Adrien Mazarguil
RSS hash types (ETH_RSS_* macros defined in rte_ethdev.h) describe the protocol header fields of a packet that must be taken into account while computing RSS. When facing encapsulated (e.g. tunneled) packets, there is an ambiguity as to whether these should apply to inner or outer packets. Applica

[dpdk-dev] [PATCH v5 10/16] ethdev: refine TPID handling in flow API

2018-04-19 Thread Adrien Mazarguil
TPID handling in rte_flow VLAN and E_TAG pattern item definitions is not consistent with the normal stacking order of pattern items, which is confusing to applications. Problem is that when followed by one of these layers, the EtherType field of the preceding layer keeps its "inner" definition, an

[dpdk-dev] [PATCH v5 12/16] ethdev: add transfer attribute to flow API

2018-04-19 Thread Adrien Mazarguil
This new attribute enables applications to create flow rules that do not simply match traffic whose origin is specified in the pattern (e.g. some non-default physical port or VF), but actively affect it by applying the flow rule at the lowest possible level in the underlying device. It breaks ABI

[dpdk-dev] [PATCH v5 14/16] ethdev: rename physical port item in flow API

2018-04-19 Thread Adrien Mazarguil
While RTE_FLOW_ITEM_TYPE_PORT refers to physical ports of the underlying device using specific identifiers, these are often confused with DPDK port IDs exposed to applications in the global name space. Since this pattern item is seldom used, rename it RTE_FLOW_ITEM_PHY_PORT for better clarity. No

[dpdk-dev] [PATCH v5 13/16] ethdev: update behavior of VF/PF in flow API

2018-04-19 Thread Adrien Mazarguil
Contrary to all other pattern items, these are inconsistently documented as affecting traffic instead of simply matching its origin, without provision for the latter. This commit clarifies documentation and updates PMDs since the original behavior now has to be explicitly requested using the new t

[dpdk-dev] [PATCH v5 15/16] ethdev: add physical port action to flow API

2018-04-19 Thread Adrien Mazarguil
This patch adds the missing action counterpart to the PHY_PORT pattern item, that is, the ability to directly inject matching traffic into a physical port of the underlying device. It breaks ABI compatibility for the following public functions: - rte_flow_copy() - rte_flow_create() - rte_flow_que

[dpdk-dev] [PATCH v5 16/16] ethdev: add port ID item and action to flow API

2018-04-19 Thread Adrien Mazarguil
RTE_FLOW_ACTION_TYPE_PORT_ID brings the ability to inject matching traffic into a different device, as identified by its DPDK port ID. This is normally only supported when the target port ID has some kind of relationship with the port ID the flow rule is created against, such as being exposed by a

Re: [dpdk-dev] [PATCH v4 03/11] net/mlx5: support L3 VXLAN flow

2018-04-19 Thread Xueming(Steven) Li
> -Original Message- > From: Nélio Laranjeiro > Sent: Thursday, April 19, 2018 2:56 PM > To: Xueming(Steven) Li > Cc: Shahaf Shuler ; dev@dpdk.org > Subject: Re: [PATCH v4 03/11] net/mlx5: support L3 VXLAN flow > > On Thu, Apr 19, 2018 at 06:20:50AM +, Xueming(Steven) Li wrote: > >

Re: [dpdk-dev] [dpdk-stable] [PATCH v5 10/11] ethdev: fix missing boolean values in flow command

2018-04-19 Thread Adrien Mazarguil
On Wed, Apr 18, 2018 at 06:16:18PM +0100, Ferruh Yigit wrote: > On 4/17/2018 9:25 AM, Adrien Mazarguil wrote: > > On Mon, Apr 16, 2018 at 07:17:44PM +, Matan Azrad wrote: > >> Hi Adrien > >> > >> I think the title should be "app/testpmd: ..." ... > > > > Indeed, I'll update it in the next iter

[dpdk-dev] [PATCH] crypto/mrvl: update maintainers

2018-04-19 Thread Tomasz Duszynski
Jacek will no longer be maintaining mrvl crypto PMD. Special thanks to him for development and support. Signed-off-by: Tomasz Duszynski --- MAINTAINERS | 1 - 1 file changed, 1 deletion(-) diff --git a/MAINTAINERS b/MAINTAINERS index fe7c59d..0dba588 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @

[dpdk-dev] [PATCH] net/mvpp2: update maintainers

2018-04-19 Thread Tomasz Duszynski
Jacek will no longer be maintaining mvpp2 net PMD. Special thanks to him for his development and support. Signed-off-by: Tomasz Duszynski --- MAINTAINERS | 1 - 1 file changed, 1 deletion(-) diff --git a/MAINTAINERS b/MAINTAINERS index f43e3fe..fe7c59d 100644 --- a/MAINTAINERS +++ b/MAINTAINERS

Re: [dpdk-dev] [PATCH v2 1/2] net/pcap: physical interface MAC support

2018-04-19 Thread Ferruh Yigit
On 4/19/2018 6:16 AM, Kuusisaari, Juhamatti wrote: Why a build time config option for this? Can we make it a runtime devarg? >>> >>> Sure, we can make it a devarg. Or do we even need that? Are there a lot of >> test dependencies that would need to be fixed if we have it enabled by >> default?

Re: [dpdk-dev] [PATCH v4 01/11] crypto: replace rte_panic instances in crypto driver

2018-04-19 Thread Trahe, Fiona
Hi Arnon, Can you change subject to crypto/dpaa:... please as it's only affecting that driver. Fiona > -Original Message- > From: dev [mailto:dev-boun...@dpdk.org] On Behalf Of Arnon Warshavsky > Sent: Thursday, April 19, 2018 7:01 AM > To: tho...@monjalon.net; Burakov, Anatoly ; Lu, > W

[dpdk-dev] [PATCH] examples/ip_pipeline: fix buffer not null terminated

2018-04-19 Thread Kevin Laatz
The destination string may not have a NULL termination if the source's string is equal to the sizeof(mempool->name). Using strlcpy in place of strncpy fixes this issue as strlcpy guarantees NULL termination. Coverity issue: 272588 Fixes: 6bfe74f8c93e ("examples/ip_pipeline: add mempool object") C

[dpdk-dev] [PATCH] examples/ip_pipeline: fix buffer not null terminated

2018-04-19 Thread Kevin Laatz
The destination string may not have a NULL termination if the source's string is equal to the sizeof(tmgr_port->name). Using strlcpy in place of strncpy fixes this issue as strlcpy guarantees NULL termination. Coverity issue: 272592 Fixes: 25961ff3bcb9 ("examples/ip_pipeline: add traffic manager

[dpdk-dev] [PATCH] examples/ip_pipeline: fix resource leak

2018-04-19 Thread Kevin Laatz
Closing the fd_server file descriptor on error to fix the resource leak. Coverity issue: 272587 Fixes: 4bbf8e30aa5e ("examples/ip_pipeline: add CLI interface") Cc: jasvinder.si...@intel.com Signed-off-by: Kevin Laatz --- examples/ip_pipeline/conn.c | 3 +++ 1 file changed, 3 insertions(+) diff

Re: [dpdk-dev] [dpdk-stable] [PATCH v3 1/7] ethdev: fix port data reset timing

2018-04-19 Thread Ferruh Yigit
On 3/30/2018 11:39 AM, Ferruh Yigit wrote: > On 3/28/2018 1:07 PM, Matan Azrad wrote: >> Hi Ferruh >> >>> From: Ferruh Yigit, Wednesday, March 28, 2018 1:38 AM >>> On 3/5/2018 3:12 PM, Matan Azrad wrote: Hi Ferruh From: Ferruh Yigit, Sent: Monday, March 5, 2018 5:07 PM > On 3/5/2

Re: [dpdk-dev] [PATCH v4 1/5] lib/ethdev: support for inline IPsec events

2018-04-19 Thread Thomas Monjalon
11/04/2018 08:40, Anoob Joseph: > Adding support for IPsec events in rte_eth_event framework. In inline > IPsec offload, the per packet protocol defined variables, like ESN, > would be managed by PMD. In such cases, PMD would need IPsec events > to notify application about various conditions like,

Re: [dpdk-dev] [PATCH v4 03/11] net/mlx5: support L3 VXLAN flow

2018-04-19 Thread Nélio Laranjeiro
On Thu, Apr 19, 2018 at 10:21:26AM +, Xueming(Steven) Li wrote: > > > > -Original Message- > > From: Nélio Laranjeiro > > Sent: Thursday, April 19, 2018 2:56 PM > > To: Xueming(Steven) Li > > Cc: Shahaf Shuler ; dev@dpdk.org > > Subject: Re: [PATCH v4 03/11] net/mlx5: support L3 VXL

Re: [dpdk-dev] [PATCH] eventdev: fix icc build

2018-04-19 Thread Thomas Monjalon
> > ICC complains about variable being used before its value is set. > > Since the variable is only assigned in the for loop, its declaration is > > moved > > inside and is initialized. > > > > lib/librte_eventdev/rte_event_timer_adapter.c(708): error #592: > > variable "ret" is used before its v

Re: [dpdk-dev] [PATCH] crypto/mrvl: add MRVL PMD to meson

2018-04-19 Thread De Lara Guarch, Pablo
Hi Tomasz, > -Original Message- > From: dev [mailto:dev-boun...@dpdk.org] On Behalf Of Tomasz Duszynski > Sent: Monday, April 16, 2018 7:08 AM > To: dev@dpdk.org > Cc: Richardson, Bruce ; d...@marvell.com; > nsams...@marvell.com; Tomasz Duszynski > Subject: [dpdk-dev] [PATCH] crypto/mrvl:

Re: [dpdk-dev] vmxnet3 RX VLAN Strip offload incorrect behaviour

2018-04-19 Thread Padam Jeet Singh
Hi, Does anyone have a work-around for this? Should we debug the vmxnet3 driver since for sure this issue is even coming in standard l2fwd example. Thanks, Padam > On 12-Apr-2018, at 11:52 AM, Padam Jeet Singh > wrote: > > > >> On 10-Apr-2018, at 11:43 AM, Yong Wang wrote: >> >> When usi

[dpdk-dev] [PATCH 02/23] net/sfc/base: make RxQ type data an union

2018-04-19 Thread Andrew Rybchenko
The type is an internal interface. Single integer is insufficient to carry RxQ type-specific information in the case of equal stride super-buffer Rx mode (packet buffers per bucket, maximum DMA length, packet stride, head of line block timeout). Signed-off-by: Andrew Rybchenko --- drivers/net/sf

[dpdk-dev] [PATCH 03/23] net/sfc/base: detect equal stride super-buffer support

2018-04-19 Thread Andrew Rybchenko
Equal stride super-buffer Rx mode is supported on Medford2 by DPDK firmware variant. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/base/ef10_nic.c | 6 ++ drivers/net/sfc/base/efx.h | 1 + drivers/net/sfc/base/siena_nic.c | 1 + 3 files changed, 8 insertions(+) diff --git a/dri

[dpdk-dev] [PATCH 09/23] net/sfc: conditionally compile support for tunnel packets

2018-04-19 Thread Andrew Rybchenko
Equal stride super-buffer Rx datapath does not support tunnels, code to parse tunnel packet types and inner checksum offload is not required and it is important to be able to compile it out on build time to avoid extra CPU load. Cutting of tunnels support relies on compiler optimizaitons to be abl

[dpdk-dev] [PATCH 01/23] net/sfc/base: update autogenerated MCDI and TLV headers

2018-04-19 Thread Andrew Rybchenko
Equal stride super-buffer is a new name instead of deprecated equal stride packed stream to avoid confusion with previous packed stream. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/base/ef10_tlv_layout.h | 22 ++ drivers/net/sfc/base/efx_regs_mcdi.h | 646 +

[dpdk-dev] [PATCH 21/23] net/sfc: make processing of flow rule actions more uniform

2018-04-19 Thread Andrew Rybchenko
From: Roman Zhukov Prepare function that parse flow rule actions to support not fate-deciding actions. Signed-off-by: Roman Zhukov Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/sfc_flow.c | 57 ++ 1 file changed, 37 insertions(+), 20 deletions

[dpdk-dev] [PATCH 18/23] net/sfc/base: get actions MARK and FLAG support

2018-04-19 Thread Andrew Rybchenko
From: Roman Zhukov Filter actions MARK and FLAG are supported on Medford2 by DPDK firmware variant. Signed-off-by: Roman Zhukov Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/base/ef10_nic.c | 10 ++ drivers/net/sfc/base/efx.h | 3 +++ drivers/net/sfc/base/siena_nic.c |

[dpdk-dev] [PATCH 12/23] net/sfc: support equal stride super-buffer Rx mode

2018-04-19 Thread Andrew Rybchenko
HW Rx descriptor represents many contiguous packet buffers which follow each other. Number of buffers, stride and maximum DMA length are setup-time configurable per Rx queue based on provided mempool. The mempool must support contiguous block allocation and get info API to retrieve number of object

[dpdk-dev] [PATCH 22/23] net/sfc: support MARK and FLAG actions in flow API

2018-04-19 Thread Andrew Rybchenko
From: Roman Zhukov Signed-off-by: Roman Zhukov Signed-off-by: Andrew Rybchenko --- doc/guides/nics/sfc_efx.rst | 4 +++ drivers/net/sfc/sfc_flow.c | 64 + 2 files changed, 68 insertions(+) diff --git a/doc/guides/nics/sfc_efx.rst b/doc/guides/nics

[dpdk-dev] [PATCH 23/23] doc: advertise equal stride super-buffer Rx mode support in net/sfc

2018-04-19 Thread Andrew Rybchenko
Signed-off-by: Andrew Rybchenko --- doc/guides/rel_notes/release_18_05.rst | 2 ++ 1 file changed, 2 insertions(+) diff --git a/doc/guides/rel_notes/release_18_05.rst b/doc/guides/rel_notes/release_18_05.rst index b8f526b..e99c2a6 100644 --- a/doc/guides/rel_notes/release_18_05.rst +++ b/doc/gu

[dpdk-dev] [PATCH 06/23] net/sfc: factor out function to push Rx doorbell

2018-04-19 Thread Andrew Rybchenko
The function may be shared by different Rx datapath implementations. Signed-off-by: Andrew Rybchenko Reviewed-by: Ivan Malov Reviewed-by: Andy Moreton --- drivers/net/sfc/sfc_ef10.h| 31 +++ drivers/net/sfc/sfc_ef10_rx.c | 33 +++-- 2

[dpdk-dev] [PATCH 19/23] net/sfc/base: support MARK and FLAG actions in filters

2018-04-19 Thread Andrew Rybchenko
From: Roman Zhukov This patch adds support for DPDK rte_flow "MARK" and "FLAG" filter actions to filters on EF10 family NICs. Signed-off-by: Roman Zhukov Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/base/ef10_filter.c | 31 +++ drivers/net/sfc/base/efx.h

[dpdk-dev] [PATCH 05/23] net/sfc/base: add equal stride super-buffer prefix layout

2018-04-19 Thread Andrew Rybchenko
Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/base/efx_regs_ef10.h | 15 +++ 1 file changed, 15 insertions(+) diff --git a/drivers/net/sfc/base/efx_regs_ef10.h b/drivers/net/sfc/base/efx_regs_ef10.h index 2cb96e8..968aaac 100644 --- a/drivers/net/sfc/base/efx_regs_ef10.h +++ b

[dpdk-dev] [PATCH 08/23] net/sfc: move EF10 Rx event parser to shared header

2018-04-19 Thread Andrew Rybchenko
Equal stride super-buffer Rx datapath will use it as well. Signed-off-by: Andrew Rybchenko Reviewed-by: Ivan Malov --- drivers/net/sfc/sfc_ef10_rx.c| 138 +--- drivers/net/sfc/sfc_ef10_rx_ev.h | 164 +++ 2 files changed, 165 in

[dpdk-dev] [PATCH 13/23] net/sfc: support callback to check if mempool is supported

2018-04-19 Thread Andrew Rybchenko
The callback is a dummy yet since no Rx datapath provides its own callback, so all pools are supported. Signed-off-by: Andrew Rybchenko Reviewed-by: Ivan Malov --- drivers/net/sfc/sfc_dp_rx.h | 13 + drivers/net/sfc/sfc_ethdev.c | 16 2 files changed, 29 insertions

  1   2   3   >