[dpdk-dev] [PATCH v1 16/28] eal/soc: add intr_handle

2016-05-06 Thread Jan Viktorin
Signed-off-by: Jan Viktorin --- lib/librte_eal/common/include/rte_soc.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lib/librte_eal/common/include/rte_soc.h b/lib/librte_eal/common/include/rte_soc.h index 3192121..4b4789b 100644 --- a/lib/librte_eal/common/include/rte_soc.h +++

[dpdk-dev] [PATCH v1 17/28] eal/soc: hack (const char *) compatible setting

2016-05-06 Thread Jan Viktorin
The strict GCC rules do not allow to set the rte_soc_addr.compatible as it is marked 'const'. However, we need it to be const because drivers will set it statically by const strings. So this hack enables both. Is there a better way to go? Signed-off-by: Jan Viktorin ---

[dpdk-dev] [PATCH v1 18/28] eal/soc: detect numa_node of the rte_soc_device

2016-05-06 Thread Jan Viktorin
No idea whether this is useful. Who creates the numa_node in the sysfs? This can be probably dropped later. Signed-off-by: Jan Viktorin --- lib/librte_eal/common/eal_common_soc.c | 8 lib/librte_eal/common/include/rte_soc.h | 1 + lib/librte_eal/linuxapp/eal/eal_soc.c | 26

[dpdk-dev] [PATCH v1 19/28] eal/soc: add drv_flags

2016-05-06 Thread Jan Viktorin
The flags are copied from the PCI ones. They should be refactorized into a general set of flags in the future. Signed-off-by: Jan Viktorin --- lib/librte_eal/common/include/rte_soc.h | 10 ++ 1 file changed, 10 insertions(+) diff --git a/lib/librte_eal/common/include/rte_soc.h

[dpdk-dev] [PATCH v1 20/28] eal/soc: map resources conditionally

2016-05-06 Thread Jan Viktorin
Signed-off-by: Jan Viktorin --- lib/librte_eal/common/eal_common_soc.c | 16 ++-- 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/lib/librte_eal/common/eal_common_soc.c b/lib/librte_eal/common/eal_common_soc.c index af4daa5..d178c48 100644 ---

[dpdk-dev] [PATCH v1 21/28] eal/soc: unbind kernel driver on probe

2016-05-06 Thread Jan Viktorin
Signed-off-by: Jan Viktorin --- lib/librte_eal/common/eal_common_soc.c | 6 ++ lib/librte_eal/common/eal_private.h| 10 ++ lib/librte_eal/linuxapp/eal/eal_soc.c | 11 +++ 3 files changed, 27 insertions(+) diff --git a/lib/librte_eal/common/eal_common_soc.c

[dpdk-dev] [PATCH v1 22/28] eal/soc: detect DMA non-coherent devices

2016-05-06 Thread Jan Viktorin
The SoC devices can be sometimes DMA non-coherent. This means that we need to take care of memory allocation for those. Generally, drivers assume that every device is DMA coherent. If a driver supports a DMA non-coherent device, it sets the RTE_SOC_DRV_ACCEPT_NONCC flag. Note that the

[dpdk-dev] [PATCH v1 23/28] eal: define macro container_of

2016-05-06 Thread Jan Viktorin
Signed-off-by: Jan Viktorin --- lib/librte_eal/common/include/rte_common.h | 16 1 file changed, 16 insertions(+) diff --git a/lib/librte_eal/common/include/rte_common.h b/lib/librte_eal/common/include/rte_common.h index 332f2a4..a9b6792 100644 ---

[dpdk-dev] [PATCH v1 24/28] ether: utilize container_of for pci_drv

2016-05-06 Thread Jan Viktorin
It is not necessary to place the rte_pci_driver at the beginning of the rte_eth_dev struct anymore as we use the container_of macro to get the parent pointer. Signed-off-by: Jan Viktorin --- lib/librte_ether/rte_ethdev.c | 4 ++-- lib/librte_ether/rte_ethdev.h | 2 +- 2 files changed, 3

[dpdk-dev] [PATCH v1 25/28] ether: verify we copy info from a PCI device

2016-05-06 Thread Jan Viktorin
Signed-off-by: Jan Viktorin --- lib/librte_ether/rte_ethdev.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lib/librte_ether/rte_ethdev.c b/lib/librte_ether/rte_ethdev.c index 5474523..0b0dcbc 100644 --- a/lib/librte_ether/rte_ethdev.c +++ b/lib/librte_ether/rte_ethdev.c @@ -3077,6

[dpdk-dev] [PATCH v1 26/28] ether: extract function eth_dev_get_intr_handle

2016-05-06 Thread Jan Viktorin
We abstract access to the intr_handle here as we want to get it either from the pci_dev or soc_dev. Signed-off-by: Jan Viktorin --- lib/librte_ether/rte_ethdev.c | 15 +-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/lib/librte_ether/rte_ethdev.c

[dpdk-dev] [PATCH v1 27/28] ether: extract function eth_dev_get_driver_name

2016-05-06 Thread Jan Viktorin
Signed-off-by: Jan Viktorin --- lib/librte_ether/rte_ethdev.c | 15 ++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/lib/librte_ether/rte_ethdev.c b/lib/librte_ether/rte_ethdev.c index 9378a4a..4af2e5f 100644 --- a/lib/librte_ether/rte_ethdev.c +++

[dpdk-dev] [PATCH v1 28/28] ether: support SoC device/driver

2016-05-06 Thread Jan Viktorin
Signed-off-by: Jan Viktorin --- lib/librte_ether/rte_ethdev.c | 127 +- lib/librte_ether/rte_ethdev.h | 31 +++ 2 files changed, 157 insertions(+), 1 deletion(-) diff --git a/lib/librte_ether/rte_ethdev.c b/lib/librte_ether/rte_ethdev.c index

[dpdk-dev] [PATCH 0/4] Add new KASUMI SW PMD

2016-05-06 Thread Pablo de Lara
Added new SW PMD which makes use of the libsso SW library, which provides wireless algorithms KASUMI F8 and F9 in software. This PMD supports cipher-only, hash-only and chained operations ("cipher then hash" and "hash then cipher") of the following algorithms: - RTE_CRYPTO_SYM_CIPHER_KASUMI_F8 -

[dpdk-dev] [PATCH 1/4] kasumi: add new KASUMI PMD

2016-05-06 Thread Pablo de Lara
Added new SW PMD which makes use of the libsso_kasumi SW library, which provides wireless algorithms KASUMI F8 and F9 in software. This PMD supports cipher-only, hash-only and chained operations ("cipher then hash" and "hash then cipher") of the following algorithms: -

[dpdk-dev] [PATCH 2/4] app/test: add new buffer comparison macros

2016-05-06 Thread Pablo de Lara
In order to compare buffers with length and offset in bits, new macros have been created, which use the previous compare function to compare full bytes and then, compare first and last bytes of each buffer separately. Signed-off-by: Pablo de Lara --- app/test/test.h | 57

[dpdk-dev] [PATCH 3/4] app/test: add unit tests for KASUMI PMD

2016-05-06 Thread Pablo de Lara
Signed-off-by: Pablo de Lara --- app/test/test_cryptodev.c | 519 + app/test/test_cryptodev.h | 1 + app/test/test_cryptodev_kasumi_hash_test_vectors.h | 222 + app/test/test_cryptodev_kasumi_test_vectors.h |

[dpdk-dev] [PATCH 4/4] l2fwd-crypto: add KASUMI algo support

2016-05-06 Thread Pablo de Lara
Signed-off-by: Pablo de Lara --- examples/l2fwd-crypto/main.c | 10 +++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/examples/l2fwd-crypto/main.c b/examples/l2fwd-crypto/main.c index d4e2d8d..a05f953 100644 --- a/examples/l2fwd-crypto/main.c +++

[dpdk-dev] [PATCH 0/8] Snow3G bit-level support

2016-05-06 Thread Pablo de Lara
The underlying library libsso for Snow3G PMD will be updated, to support bit-level operations. This patchset updates the PMD to allow the user to perform crypto operation at bit-level. It also add some unit tests and updates the documentation. This patchset depends on the following patchset:

[dpdk-dev] [PATCH 1/8] snow3g: rename libsso reference due to library update

2016-05-06 Thread Pablo de Lara
The underlying libsso library that SNOW3G PMD uses has been updated, so now it is called libsso_snow3g. Also, the path to the library has been renamed to reflect this changes (now called LIBSSO_SNOW3G_PATH). Signed-off-by: Pablo de Lara --- doc/guides/cryptodevs/snow3g.rst | 6 +++---

[dpdk-dev] [PATCH 2/8] doc: update build instructions for libsso_snow3g

2016-05-06 Thread Pablo de Lara
With the library update, the way to compile the library has changed, so documentation reflects this change. Also, the patch to fix the compilation issues present with gcc > 5.0 has been removed, as the issues have been fixed in the library. Signed-off-by: Pablo de Lara ---

[dpdk-dev] [PATCH 3/8] snow3g: support bit-level operations

2016-05-06 Thread Pablo de Lara
Underlying libsso_snow3g library now supports bit-level operations, so PMD has been updated to allow them. Signed-off-by: Pablo de Lara --- doc/guides/cryptodevs/snow3g.rst | 5 +- drivers/crypto/snow3g/rte_snow3g_pmd.c | 129 ++--- 2 files changed, 120

[dpdk-dev] [PATCH 4/8] test: use new bit-level memcmp macro

2016-05-06 Thread Pablo de Lara
Instead of modifying the content of the buffers, to compare them at bit-level, use the new macro TEST_ASSERT_BUFFERS_ARE_EQUAL_BIT, which does not make any modifications in the buffers. Signed-off-by: Pablo de Lara --- app/test/test_cryptodev.c | 68

[dpdk-dev] [PATCH 5/8] test: fix buffer lengths for snow3G tests

2016-05-06 Thread Pablo de Lara
No padding was added in the input buffers for snow3G tests, due to a wrong calculation of the length (should be multiple of the block size). This fix takes into account the case where the length is not byte multiple. Fixes: 8bdf665fe6c0 ("app/test: add SNOW 3G") Signed-off-by: Pablo de Lara ---

[dpdk-dev] [PATCH 6/8] test: add out-of-place crypto op tests for Snow3G PMD

2016-05-06 Thread Pablo de Lara
Signed-off-by: Pablo de Lara --- app/test/test_cryptodev.c | 4 1 file changed, 4 insertions(+) diff --git a/app/test/test_cryptodev.c b/app/test/test_cryptodev.c index 1656ad0..6d0abf1 100644 --- a/app/test/test_cryptodev.c +++ b/app/test/test_cryptodev.c @@ -5181,6 +5181,10 @@ static

[dpdk-dev] [PATCH 7/8] test: add bit-level Snow3G UIA2 tests

2016-05-06 Thread Pablo de Lara
Snow3G PMD supports now buffers that are non byte multiple, so tests to cover this case have been added. Signed-off-by: Pablo de Lara --- app/test/test_cryptodev.c | 50 ++ app/test/test_cryptodev_snow3g_hash_test_vectors.h | 107 + 2 files

[dpdk-dev] [PATCH 8/8] test: add Snow3G UEA2 test with offset

2016-05-06 Thread Pablo de Lara
With the new libsso library, buffers can be encrypted/decrypted, providing an offset in bits, so an extra unit test has been added to cover this case. Signed-off-by: Pablo de Lara --- app/test/test_cryptodev.c | 121 ++ 1 file changed, 121

[dpdk-dev] [PATCH v1 01/10] app/test: introduce resources for tests

2016-05-06 Thread Thomas Monjalon
2016-05-06 12:48, Jan Viktorin: > --- /dev/null > +++ b/app/test/resource.h > @@ -0,0 +1,61 @@ > +/*- > + * BSD LICENSE [...] > + */ Please include a multi-line comment here to explain what is a resource and why it is needed. > + > +#ifndef _RESOURCE_H_ > +#define _RESOURCE_H_ > + |...] |> + >

[dpdk-dev] [PATCH] enic: fix 'imissed' to count drops due to no RX buffers

2016-05-06 Thread Bruce Richardson
On Tue, Apr 26, 2016 at 07:50:15PM -0700, John Daley wrote: > Fixes: 7182d3e7d177 ("enic: expose Rx missed packets counter") > Signed-off-by: John Daley > --- > drivers/net/enic/enic_main.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/net/enic/enic_main.c

[dpdk-dev] [PATCH v1 02/10] app/test: support resources externally linked

2016-05-06 Thread Thomas Monjalon
It looks a lot too much tricky to be integrated without code comments ;) Please make a documentation effort. 2016-05-06 12:48, Jan Viktorin: > --- a/app/test/Makefile > +++ b/app/test/Makefile > @@ -33,6 +33,37 @@ include $(RTE_SDK)/mk/rte.vars.mk > > ifeq ($(CONFIG_RTE_APP_TEST),y) A comment

[dpdk-dev] [PATCH v4 1/3] bnx2x: refactor Tx routine for single doorbell mechanism

2016-05-06 Thread Bruce Richardson
On Tue, May 03, 2016 at 10:38:20PM -0700, Rasesh Mody wrote: > Change the Tx routine logic to ring the doorbell once per burst and not > on every Tx packet. This driver-level optimization is necessary to achieve > line rates for larger frame sizes (1k or more). > > Fixes: 540a211084a7 ("bnx2x:

[dpdk-dev] [PATCH v4 2/3] bnx2x: enhance stats get

2016-05-06 Thread Bruce Richardson
On Tue, May 03, 2016 at 10:38:21PM -0700, Rasesh Mody wrote: > Enhance the stats_get() routine to display drop counters under > imissed counter. > Added extended stats get support to provide additional info. > Encorporated review comment to rename some of the stats. > > Signed-off-by: Rasesh Mody

[dpdk-dev] [PATCH] i40e: fix vlan stripping from inner header

2016-05-06 Thread Bruce Richardson
On Wed, May 04, 2016 at 01:42:25PM +0800, Jingjing Wu wrote: > Previously, for tunnel packets, such as VXLAN/NVGRE, the vlan > tags of the inner header will be stripped without putting vlan > info to descriptor, what is not expected behaviour. > This patch fixes it by changing hardware

[dpdk-dev] [PATCH 0/2] Added AES counter mode capability

2016-05-06 Thread Jain, Deepak K
Series-Acked-by: Deepak Kumar JAIN -Original Message- From: Kusztal, ArkadiuszX Sent: Friday, May 6, 2016 11:22 AM To: dev at dpdk.org Cc: Trahe, Fiona ; Jain, Deepak K ; Griffin, John ; Kusztal, ArkadiuszX Subject: [PATCH 0/2] Added AES counter mode capability This patchset adds AES

[dpdk-dev] [PATCH] i40evf: fix return value if command fails

2016-05-06 Thread Bruce Richardson
On Thu, May 05, 2016 at 02:22:54PM +0800, Jingjing Wu wrote: > Previously, if message is sent successfully, but no response is > received, function "i40evf_execute_vf_cmd" will return without error. > The root cause is value "err" is overwritten. This patch fixes it. > > Fixes: ae19955e7c86

[dpdk-dev] [PATCH v1] net: i40e: add VLAN tag size to RXMAX

2016-05-06 Thread Nikita Kozlov
Hello, On 09/ 1/15 07:34 AM, Zhang, Helin wrote: >> -Original Message- >> From: Vlad Zolotarov [mailto:vladz at cloudius-systems.com] >> Sent: Monday, August 31, 2015 2:42 PM >> To: dev at dpdk.org >> Cc: Zhang, Helin; Ananyev, Konstantin; avi at cloudius-systems.com; Vlad >> Zolotarov >>

[dpdk-dev] [PATCH 1/5] bonding: replace spinlock with read/write lock

2016-05-06 Thread Stephen Hemminger
On Fri, 6 May 2016 11:32:19 +0100 Declan Doherty wrote: > On 05/05/16 18:12, Stephen Hemminger wrote: > > On Thu, 5 May 2016 16:14:56 +0100 > > Bernard Iremonger wrote: > > > >> Fixes: a45b288ef21a ("bond: support link status polling") > >> Signed-off-by: Bernard Iremonger > > > > You know an

[dpdk-dev] [PATCH 0/6] ip_pipeline: CLI rework and improvements

2016-05-06 Thread Michal Jastrzebski
Using the latest librte_cmdline improvements, the CLI implementation of the ip_pipeline application is streamlined and improved, which results in eliminating thousands of lines of code from the application, thus leading to code that is easier to maintain and extend. Michal Jastrzebski (6):

[dpdk-dev] [PATCH 1/6] examples/ip_pipeline: add helper functions for parsing string

2016-05-06 Thread Michal Jastrzebski
Add a couple of additional functions that will allow to parse many types of input parameters, i.e.: bool, 16, 32, 64 bits, hex, etc. Signed-off-by: Piotr Azarewicz --- examples/ip_pipeline/Makefile | 1 + examples/ip_pipeline/config_parse.c | 242 +

[dpdk-dev] [PATCH 2/6] examples/ip_pipeline: modifies common pipeline CLI

2016-05-06 Thread Michal Jastrzebski
All commands are merged into one command: cmd_link_parsed. Signed-off-by: Tomasz Kulasek --- examples/ip_pipeline/pipeline/pipeline_common_fe.c | 309 - 1 file changed, 111 insertions(+), 198 deletions(-) diff --git a/examples/ip_pipeline/pipeline/pipeline_common_fe.c

[dpdk-dev] [PATCH 3/6] examples/ip_pipeline: modifies routing commands

2016-05-06 Thread Michal Jastrzebski
several routing commands are merged into two commands: route and arp - these two commands are handled by cli library. Rest of the commands are handled internaly by the pipeline code. Signed-off-by: Piotr Azarewicz --- examples/ip_pipeline/pipeline/pipeline_routing.c | 1774

[dpdk-dev] [PATCH 4/6] examples/ip_pipeline: modifies firewall pipeline CLI

2016-05-06 Thread Michal Jastrzebski
Each command are merged into one: cmd_firewall_parsed. ADD command format is changed: p firewall add priority ipv4 port and bulk command was modified: 1. firewall add bulk File line format: priority ipv4 port (protomask is a hex value) File line example: priority 0 ipv4

[dpdk-dev] [PATCH 5/6] examples/ip_pipeline: modifies flow classifications pipeline CLI

2016-05-06 Thread Michal Jastrzebski
This patch modifies flow classifications pipeline command line interface. All commands are merged into one cmd_fc_parsed. Additionally a classification for ipv6, ipv4 and qinq can be added from configuration file. 1. flow add qinq bulk File line format: qinq port id File line example: qinq 1

[dpdk-dev] [PATCH 6/6] examples/ip_pipeline: modifies flow action pipeline CLI

2016-05-06 Thread Michal Jastrzebski
All commands merged into one: cmd_action_parsed. modified bulk command: action flow bulk File line format: flow meter 0 meter 1 meter 2 meter 3 policer 0policer 1 policer 2policer 3 port at least one meter needs to be provided (can be any meter ID) and at least

[dpdk-dev] [PATCH] app/test: isolate lpm performance cases

2016-05-06 Thread Thomas Monjalon
The LPM performance tests should not be mixed with functional tests: they are long and show some statistics. Signed-off-by: Thomas Monjalon --- app/test/Makefile | 2 + app/test/test_lpm.c | 211 +-- app/test/test_lpm6.c | 155

[dpdk-dev] [PATCH v1 01/10] app/test: introduce resources for tests

2016-05-06 Thread Jan Viktorin
On Fri, 06 May 2016 16:01:08 +0200 Thomas Monjalon wrote: > 2016-05-06 12:48, Jan Viktorin: > > --- /dev/null > > +++ b/app/test/resource.h > > @@ -0,0 +1,61 @@ > > +/*- > > + * BSD LICENSE > [...] > > + */ > > Please include a multi-line comment here to explain what is a resource > and

[dpdk-dev] [PATCH 0/9] IPSec example enhancements

2016-05-06 Thread Sergio Gonzalez Monroy
Update IPSec sample app with IPv6 and Transport mode support. The series contains some bug fixes to facilitate patch merge. Sergio Gonzalez Monroy (9): examples/ipsec-secgw: fix esp padding check examples/ipsec-secgw: fix stack smashing error examples/ipsec-secgw: add build option and

[dpdk-dev] [PATCH 1/9] examples/ipsec-secgw: fix esp padding check

2016-05-06 Thread Sergio Gonzalez Monroy
Current code fails to correctly check padding sequence for inbound packets. Padding sequence starts on 1 but it checks for 0. Fixes: d299106e8e31 ("examples/ipsec-secgw: add IPsec sample application") Signed-off-by: Sergio Gonzalez Monroy --- examples/ipsec-secgw/esp.c | 2 +- 1 file changed,

[dpdk-dev] [PATCH 2/9] examples/ipsec-secgw: fix stack smashing error

2016-05-06 Thread Sergio Gonzalez Monroy
Building the application with -O3 and -fstack-protection (default in Ubuntu) results in the following error: *** stack smashing detected ***: ./build/ipsec-secgw terminated The error is caused by storing an 8B value in a 4B variable. Fixes: d299106e8e31 ("examples/ipsec-secgw: add IPsec sample

[dpdk-dev] [PATCH 3/9] examples/ipsec-secgw: add build option and cleanup

2016-05-06 Thread Sergio Gonzalez Monroy
Add support for building the application with DEBUG=1. This option adds the compiler stack protection flag and enables extra output in the application. Also remove unnecessary VPATH setup. Signe-off-by: Sergio Gonzalez Monroy --- examples/ipsec-secgw/Makefile | 5 +++-- 1 file changed, 3

[dpdk-dev] [PATCH 5/9] examples/ipsec-secgw: fix no sa found case

2016-05-06 Thread Sergio Gonzalez Monroy
The application only checks that an SA shoudln't be NULL through ASSERT (only when debugging is enabled) without properly dealing with the case of not having an SA for the processed packet. If no SA is found, drop the packet. Fixes: d299106e8e31 ("examples/ipsec-secgw: add IPsec sample

[dpdk-dev] [PATCH 6/9] examples/ipsec-secgw: consistent config variable names

2016-05-06 Thread Sergio Gonzalez Monroy
Modify the default SP config variables names to be consistent with SA. The resulting naming convention is that variables with suffixes _out/_in are the default for ep0 and the reverse for ep1. Signed-off-by: Sergio Gonzalez Monroy --- examples/ipsec-secgw/sp.c | 14 +++--- 1 file

[dpdk-dev] [PATCH 4/9] examples/ipsec-secgw: rework ipsec execution loop

2016-05-06 Thread Sergio Gonzalez Monroy
Rework implementation moving from function pointers approach, where each function implements very specific functionality, to a generic function approach. Signed-off-by: Sergio Gonzalez Monroy --- examples/ipsec-secgw/esp.c | 8 +- examples/ipsec-secgw/esp.h | 9 +-

[dpdk-dev] [PATCH 9/9] doc: update ipsec sample guide

2016-05-06 Thread Sergio Gonzalez Monroy
Signed-off-by: Sergio Gonzalez Monroy --- doc/guides/sample_app_ug/ipsec_secgw.rst | 583 --- 1 file changed, 381 insertions(+), 202 deletions(-) diff --git a/doc/guides/sample_app_ug/ipsec_secgw.rst b/doc/guides/sample_app_ug/ipsec_secgw.rst index c11c7e7..5dbee2e

[dpdk-dev] [PATCH 8/9] examples/ipsec-secgw: transport mode support

2016-05-06 Thread Sergio Gonzalez Monroy
IPSec transport mode support. Signed-off-by: Sergio Gonzalez Monroy --- examples/ipsec-secgw/esp.c | 121 ++- examples/ipsec-secgw/ipsec.h | 1 + examples/ipsec-secgw/rt.c| 32 examples/ipsec-secgw/sa.c| 39 ++

[dpdk-dev] [PATCH 7/9] examples/ipsec-secgw: ipv6 support

2016-05-06 Thread Sergio Gonzalez Monroy
Support IPSec IPv6 allowing IPv4/IPv6 traffic in IPv4 or IPv6 tunnel. We need separate Routing (LPM) and SP (ACL) tables for IPv4 and IPv6, but a common SA table. Signed-off-by: Sergio Gonzalez Monroy --- examples/ipsec-secgw/Makefile | 5 +- examples/ipsec-secgw/esp.c | 128

[dpdk-dev] [PATCH v1 02/10] app/test: support resources externally linked

2016-05-06 Thread Jan Viktorin
Hello Thomas, On Fri, 06 May 2016 16:32:53 +0200 Thomas Monjalon wrote: > It looks a lot too much tricky to be integrated without code comments ;) > Please make a documentation effort. I know it's not the brightly shining code... I focused mainly on the C API of this. Thanks a lot for

[dpdk-dev] [PATCH] examples/ip_pipline: fix memory initialization in firewall bulk functions

2016-05-06 Thread Daniel Mrzyglod
bulk functions expect that all memory is set with zeros Fixes: 67ebdbef0c31 ("examples/ip_pipeline: add bulk update of firewall rules") Signed-off-by: Daniel Mrzyglod --- examples/ip_pipeline/pipeline/pipeline_firewall_be.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff

[dpdk-dev] DPDK cpu layout script won't work on non x86

2016-05-06 Thread Stephen Hemminger
The format and layout of /proc/cpuinfo changes on different architectures, therefore the DPDK cpu_layout.py tool doesn't work. Could you please change the tool to use sysfs /sys/devices/system/cpu/cpuN/topology/ instead? Then the script would be portable and use the same files as the DPDK use

[dpdk-dev] [PATCH] ip_pipeline: add scripts file for pipeline to core mappings

2016-05-06 Thread Jasvinder Singh
From: Guruprasad Mukundarao This script parses the application configuration file and detects all the pipelines specified therein, and then, it generates all the possible mappings of those pipelines on the specified CPU core-list. As a result, each of the possible

[dpdk-dev] [PATCH] tools: allow binding to other network class devices

2016-05-06 Thread Thadeu Lima de Souza Cascardo
dpdk_nic_bind will only handle Ethernet devices, but Mellanox ConnectX-3 Pro, for example, is a Network class device, but not an Ethernet one. Even though this allows other devices in the list, like Wireless devices, this should not be a problem. Signed-off-by: Thadeu Lima de Souza Cascardo ---

[dpdk-dev] DPDK cpu layout script won't work on non x86

2016-05-06 Thread Wiles, Keith
>The format and layout of /proc/cpuinfo changes on different architectures, >therefore the DPDK cpu_layout.py tool doesn't work. > >Could you please change the tool to use sysfs >/sys/devices/system/cpu/cpuN/topology/ >instead? Then the script would be portable and use the same files as the DPDK

[dpdk-dev] Fwd: Rx Error when two pktgen sending packet to each other at the same time on Intel 82599ES 10G

2016-05-06 Thread Wiles, Keith
>Hi, > >I am doing experiments about packet classification algorithm and I found I >always get RX Error when the throughput is too high, so I did the following >experiments. > >There are two PC servers (A and B), each of them has a Intel 82599ES 10G >with two ports(1 and 2). And they are connected

[dpdk-dev] [PATCH 04/40] bnxt: add dev infos get operation

2016-05-06 Thread Stephen Hurd
Gets device info from the bp structure filled in the init() function. Signed-off-by: Stephen Hurd Reviewed-by: Ajit Kumar Khaparde --- drivers/net/bnxt/bnxt.h| 3 ++ drivers/net/bnxt/bnxt_ethdev.c | 96 +- 2 files changed, 98 insertions(+), 1

[dpdk-dev] [PATCH 01/40] bnxt: new driver for Broadcom NetXtreme-C devices

2016-05-06 Thread Stephen Hurd
Initial skeleton simply fails init. Add nic guide and tie into build system. Signed-off-by: Stephen Hurd --- MAINTAINERS | 5 ++ config/common_base | 5 ++ doc/guides/nics/bnxt.rst| 49 +++

[dpdk-dev] [PATCH 02/40] bnxt: add HWRM init code

2016-05-06 Thread Stephen Hurd
Start adding HWRM support. Initial commit just performs necessary HWRM queries for init, then fails as before. Thee used HWRM calls so far: bnxt_hwrm_func_qcaps: Queries device capabilities. bnxt_hwrm_ver_get: Gets the firmware version and interface specifications.

[dpdk-dev] [PATCH 10/40] bnxt: add Tx queue operations (nonfunctional)

2016-05-06 Thread Stephen Hurd
Add code to create/destroy TX queues. This still requires TX ring support to be completed in a future commit. Signed-off-by: Stephen Hurd Reviewed-by: Ajit Kumar Khaparde --- drivers/net/bnxt/Makefile | 1 + drivers/net/bnxt/bnxt_ethdev.c | 3 + drivers/net/bnxt/bnxt_txq.c| 125

[dpdk-dev] [PATCH 09/40] bnxt: add L2 filter alloc/init/free

2016-05-06 Thread Stephen Hurd
Add the L2 filter structure and the alloc/init/free functions for dealing with them. Signed-off-by: Stephen Hurd Reviewed-by: Ajit Kumar Khaparde --- drivers/net/bnxt/Makefile | 1 + drivers/net/bnxt/bnxt.h| 3 + drivers/net/bnxt/bnxt_filter.c | 175

[dpdk-dev] [PATCH 08/40] bnxt: add completion ring support

2016-05-06 Thread Stephen Hurd
Structures, macros, and functions for working with completion rings in the driver. Signed-off-by: Stephen Hurd Reviewed-by: Ajit Kumar Khaparde --- drivers/net/bnxt/Makefile | 1 + drivers/net/bnxt/bnxt.h| 6 + drivers/net/bnxt/bnxt_cpr.c| 139

[dpdk-dev] [PATCH 03/40] bnxt: add driver register/unregister support

2016-05-06 Thread Stephen Hurd
Move init() cleanup into uninit() function Fix .dev_private_size Add require hwrm calls: bnxt_hwrm_func_driver_register() bnxt_hwrm_func_driver_unregister() Signed-off-by: Stephen Hurd Reviewed-by: Ajit Kumar Khaparde --- drivers/net/bnxt/bnxt.h| 1 +

[dpdk-dev] [PATCH 07/40] bnxt: declare ring structs and free() func

2016-05-06 Thread Stephen Hurd
Declare ring structures and a ring free() function. Signed-off-by: Stephen Hurd Reviewed-by: Ajit Kumar Khaparde --- drivers/net/bnxt/Makefile| 1 + drivers/net/bnxt/bnxt_ring.c | 51 drivers/net/bnxt/bnxt_ring.h | 92

[dpdk-dev] [PATCH 24/40] bnxt: add HWRM ring alloc/free functions

2016-05-06 Thread Stephen Hurd
Add HWRM calls to allocate and free TX/RX/CMPL rings along with the associated structs and definitions. Signed-off-by: Stephen Hurd Reviewed-by: Ajit Kumar Khaparde --- drivers/net/bnxt/bnxt_hwrm.c | 108 drivers/net/bnxt/bnxt_hwrm.h | 7 +

[dpdk-dev] [PATCH 06/40] bnxt: add vnic functions and structs

2016-05-06 Thread Stephen Hurd
Add functions to allocate, initialize, and free vnics. Signed-off-by: Stephen Hurd Reviewed-by: Ajit Kumar Khaparde --- drivers/net/bnxt/Makefile | 1 + drivers/net/bnxt/bnxt.h| 14 ++ drivers/net/bnxt/bnxt_vnic.c | 277

[dpdk-dev] [PATCH 18/40] bnxt: add HWRM vnic free function

2016-05-06 Thread Stephen Hurd
Frees a vnic allocated by vnic_alloc. Signed-off-by: Stephen Hurd Reviewed-by: Ajit Kumar Khaparde --- drivers/net/bnxt/bnxt_hwrm.c | 21 + drivers/net/bnxt/bnxt_hwrm.h | 1 + drivers/net/bnxt/hsi_struct_def_dpdk.h | 82 ++ 3 files

[dpdk-dev] [PATCH 22/40] bnxt: add L2 Rx mask set/clear functions

2016-05-06 Thread Stephen Hurd
Allows setting and clearing L2 context RX masks per vnic Signed-off-by: Stephen Hurd Reviewed-by: Ajit Kumar Khaparde --- drivers/net/bnxt/bnxt_hwrm.c | 45 +++ drivers/net/bnxt/bnxt_hwrm.h | 3 + drivers/net/bnxt/hsi_struct_def_dpdk.h | 135

[dpdk-dev] [PATCH 21/40] bnxt: add HWRM vnic RSS config function

2016-05-06 Thread Stephen Hurd
Used to enable RSS configuration Signed-off-by: Stephen Hurd Reviewed-by: Ajit Kumar Khaparde --- drivers/net/bnxt/bnxt_hwrm.c | 24 drivers/net/bnxt/bnxt_hwrm.h | 2 ++ drivers/net/bnxt/hsi_struct_def_dpdk.h | 1 + 3 files changed, 27

[dpdk-dev] [PATCH 11/40] bnxt: add Rx queue create/destroy operations

2016-05-06 Thread Stephen Hurd
Initial create/destroy queue code. Requires RX ring support to be functional. Signed-off-by: Stephen Hurd Reviewed-by: Ajit Kumar Khaparde --- drivers/net/bnxt/Makefile | 1 + drivers/net/bnxt/bnxt.h| 2 + drivers/net/bnxt/bnxt_ethdev.c | 3 +

[dpdk-dev] [PATCH 13/40] bnxt: initial Tx ring code

2016-05-06 Thread Stephen Hurd
Initial implementation of rx_pkt_burst Add code to allocate rings to bnxt_ring.c Signed-off-by: Stephen Hurd Reviewed-by: Ajit Kumar Khaparde --- drivers/net/bnxt/Makefile | 1 + drivers/net/bnxt/bnxt_cpr.h| 4 +- drivers/net/bnxt/bnxt_ethdev.c | 5 +-

[dpdk-dev] [PATCH 12/40] bnxt: statistics operations

2016-05-06 Thread Stephen Hurd
Add get and clear staitstics operations and the asociated HWRM calls. Signed-off-by: Stephen Hurd Reviewed-by: Ajit Kumar Khaparde --- drivers/net/bnxt/Makefile | 1 + drivers/net/bnxt/bnxt.h| 5 +- drivers/net/bnxt/bnxt_cpr.c| 5 +-

[dpdk-dev] [PATCH 19/40] bnxt: add HWRM vnic cfg function

2016-05-06 Thread Stephen Hurd
Configurs a vnic allocaed by vnic_alloc function. Signed-off-by: Stephen Hurd Reviewed-by: Ajit Kumar Khaparde --- drivers/net/bnxt/bnxt_hwrm.c | 34 drivers/net/bnxt/bnxt_hwrm.h | 3 +- drivers/net/bnxt/hsi_struct_def_dpdk.h | 155

[dpdk-dev] [PATCH 16/40] bnxt: add HWRM function reset command

2016-05-06 Thread Stephen Hurd
Add bnxt_hwrm_func_reset() function and supporting structs and macros. Signed-off-by: Stephen Hurd Reviewed-by: Ajit Kumar Khaparde --- drivers/net/bnxt/bnxt_hwrm.c | 17 + drivers/net/bnxt/bnxt_hwrm.h | 1 + drivers/net/bnxt/hsi_struct_def_dpdk.h | 129

[dpdk-dev] [PATCH 17/40] bnxt: add HWRM vnic alloc function

2016-05-06 Thread Stephen Hurd
This requires a group info array in struct bnxt, so add that, save the max size from the func_qcap response, and alloc/free in init/uninit Signed-off-by: Stephen Hurd Reviewed-by: Ajit Kumar Khaparde --- drivers/net/bnxt/bnxt.h| 2 + drivers/net/bnxt/bnxt_hwrm.c | 33

[dpdk-dev] [PATCH 35/40] bnxt: add MAC address add/remove operations

2016-05-06 Thread Stephen Hurd
Add/remove MAC addresses Signed-off-by: Stephen Hurd Reviewed-by: Ajit Kumar Khaparde --- drivers/net/bnxt/bnxt_ethdev.c | 69 ++ 1 file changed, 69 insertions(+) diff --git a/drivers/net/bnxt/bnxt_ethdev.c b/drivers/net/bnxt/bnxt_ethdev.c index

[dpdk-dev] [PATCH 32/40] bnxt: add promiscuous enable/disable operations

2016-05-06 Thread Stephen Hurd
Enables and diables promiscuous mode. Signed-off-by: Stephen Hurd Reviewed-by: Ajit Kumar Khaparde --- drivers/net/bnxt/bnxt_ethdev.c | 30 ++ 1 file changed, 30 insertions(+) diff --git a/drivers/net/bnxt/bnxt_ethdev.c b/drivers/net/bnxt/bnxt_ethdev.c index

[dpdk-dev] [PATCH 37/40] bnxt: add reta update/query operations

2016-05-06 Thread Stephen Hurd
Update/query reta operations Signed-off-by: Stephen Hurd Reviewed-by: Ajit Kumar Khaparde --- drivers/net/bnxt/bnxt_ethdev.c | 56 ++ 1 file changed, 56 insertions(+) diff --git a/drivers/net/bnxt/bnxt_ethdev.c b/drivers/net/bnxt/bnxt_ethdev.c index

[dpdk-dev] [PATCH 33/40] bnxt: add all multicast enable/disable operations

2016-05-06 Thread Stephen Hurd
Enables/disables all multicast traffic. Signed-off-by: Stephen Hurd Reviewed-by: Ajit Kumar Khaparde --- drivers/net/bnxt/bnxt_ethdev.c | 30 ++ 1 file changed, 30 insertions(+) diff --git a/drivers/net/bnxt/bnxt_ethdev.c b/drivers/net/bnxt/bnxt_ethdev.c index

[dpdk-dev] [PATCH 27/40] bnxt: add struct forward decl

2016-05-06 Thread Stephen Hurd
Add missing forward declaration of struct bnxt_ring_struct to avoid requiring additional headers for the function declaation. Signed-off-by: Stephen Hurd Reviewed-by: Ajit Kumar Khaparde --- drivers/net/bnxt/bnxt_hwrm.h | 1 + 1 file changed, 1 insertion(+) diff --git

[dpdk-dev] [PATCH 28/40] bnxt: add ring allocation and group init

2016-05-06 Thread Stephen Hurd
Add a function to initialize ring groups, and a function to allocate the rings via HWRM. This should be the last functionality needed to add start/stop device operations. Signed-off-by: Stephen Hurd Reviewed-by: Ajit Kumar Khaparde --- drivers/net/bnxt/bnxt_ring.c | 119

[dpdk-dev] [PATCH 26/40] bnxt: add HWRM stat context free function

2016-05-06 Thread Stephen Hurd
Add function and associated structures and definitions as well as some convenienct functions for manipulating the state of the entire function. Signed-off-by: Stephen Hurd Reviewed-by: Ajit Kumar Khaparde --- drivers/net/bnxt/bnxt_hwrm.c | 219 +

[dpdk-dev] [PATCH 30/40] bnxt: add HWRM port phy qcfg call and wrapper

2016-05-06 Thread Stephen Hurd
Add HWRM port pgy qcfg HWRM command and bnxt_get_hwrm_link_config() wrapper which parses the link state. Signed-off-by: Stephen Hurd Reviewed-by: Ajit Kumar Khaparde --- drivers/net/bnxt/bnxt_hwrm.c | 120 + drivers/net/bnxt/bnxt_hwrm.h | 1 +

[dpdk-dev] [PATCH 34/40] bnxt: add device close operation

2016-05-06 Thread Stephen Hurd
Frees all resources except the hwrm ones, which are required to notify the HWRM that the driver is unloaded (these are freed in uninit()). Signed-off-by: Stephen Hurd Reviewed-by: Ajit Kumar Khaparde --- drivers/net/bnxt/bnxt_ethdev.c | 11 +++ 1 file changed, 11 insertions(+) diff

[dpdk-dev] [PATCH 38/40] bnxt: add RSS device operations

2016-05-06 Thread Stephen Hurd
Add rss_hash_update and rss_hash_conf_get Signed-off-by: Stephen Hurd Reviewed-by: Ajit Kumar Khaparde --- drivers/net/bnxt/bnxt_ethdev.c | 117 + 1 file changed, 117 insertions(+) diff --git a/drivers/net/bnxt/bnxt_ethdev.c

[dpdk-dev] [PATCH 39/40] bnxt: add flow control operations

2016-05-06 Thread Stephen Hurd
Add flow_ctrl_get and flow_ctrl_set device operations. Signed-off-by: Stephen Hurd Reviewed-by: Ajit Kumar Khaparde --- drivers/net/bnxt/bnxt_ethdev.c | 83 ++ 1 file changed, 83 insertions(+) diff --git a/drivers/net/bnxt/bnxt_ethdev.c

[dpdk-dev] [PATCH 05/40] bnxt: add dev configure operation

2016-05-06 Thread Stephen Hurd
This adds the bnxt_hwrm_port_phy_cfg() HWRM call, and copies required information into the new struct bnxt_link_info. Signed-off-by: Stephen Hurd Reviewed-by: Ajit Kumar Khaparde --- drivers/net/bnxt/bnxt.h| 32 +++ drivers/net/bnxt/bnxt_ethdev.c | 24 ++

[dpdk-dev] [PATCH 20/40] bnxt: add vnic RSS cos lb cTx alloc/free functions

2016-05-06 Thread Stephen Hurd
More HWRM calls. Signed-off-by: Stephen Hurd Reviewed-by: Ajit Kumar Khaparde --- drivers/net/bnxt/bnxt_hwrm.c | 38 drivers/net/bnxt/bnxt_hwrm.h | 2 + drivers/net/bnxt/hsi_struct_def_dpdk.h | 153 + 3 files changed, 193

[dpdk-dev] [PATCH 25/40] bnxt: add ring group alloc/free functions

2016-05-06 Thread Stephen Hurd
Add HWRM ring group add/free functions and associated structs and definitions. Signed-off-by: Stephen Hurd Reviewed-by: Ajit Kumar Khaparde --- drivers/net/bnxt/bnxt_hwrm.c | 84 +++ drivers/net/bnxt/bnxt_hwrm.h | 4 + drivers/net/bnxt/hsi_struct_def_dpdk.h |

[dpdk-dev] [PATCH 36/40] bnxt: add dev set link up/down operations

2016-05-06 Thread Stephen Hurd
Sets link to up or down as appropriate. Signed-off-by: Stephen Hurd Reviewed-by: Ajit Kumar Khaparde --- drivers/net/bnxt/bnxt_ethdev.c | 20 1 file changed, 20 insertions(+) diff --git a/drivers/net/bnxt/bnxt_ethdev.c b/drivers/net/bnxt/bnxt_ethdev.c index

[dpdk-dev] [PATCH 29/40] bnxt: work around HWRM error when creating rings

2016-05-06 Thread Stephen Hurd
Some HWRM versions will stop responding if we request poll mode interrupt. As a workaround, request an MSI interrupt even though we never enable it. Signed-off-by: Stephen Hurd Reviewed-by: Ajit Kumar Khaparde --- drivers/net/bnxt/bnxt_hwrm.c | 6 +- 1 file changed, 5 insertions(+), 1

[dpdk-dev] [PATCH 40/40] bnxt: cleanup null pointer checks

2016-05-06 Thread Stephen Hurd
Prefer !ptr to ptr == NULL Signed-off-by: Stephen Hurd Reviewed-by: Ajit Kumar Khaparde --- drivers/net/bnxt/bnxt_ethdev.c | 10 +- drivers/net/bnxt/bnxt_filter.c | 2 +- drivers/net/bnxt/bnxt_hwrm.c | 6 +++--- drivers/net/bnxt/bnxt_ring.c | 2 +- drivers/net/bnxt/bnxt_vnic.c

[dpdk-dev] [PATCH 23/40] bnxt: add HWRM stats context allocation

2016-05-06 Thread Stephen Hurd
Add HWRM code to allocate a statistics context and a helper function to allocate one for evert completion ring. Signed-off-by: Stephen Hurd Reviewed-by: Ajit Kumar Khaparde --- drivers/net/bnxt/bnxt_hwrm.c | 52 drivers/net/bnxt/bnxt_hwrm.h | 3 ++

<    1   2   3   >