[dpdk-dev] [PATCH 17/17] qede: update driver version

2016-08-26 Thread Rasesh Mody
Signed-off-by: Rasesh Mody --- drivers/net/qede/qede_ethdev.h |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/qede/qede_ethdev.h b/drivers/net/qede/qede_ethdev.h index 7453539..d2f61db 100644 --- a/drivers/net/qede/qede_ethdev.h +++ b/drivers/net/qede/qede_ethde

[dpdk-dev] [PATCH 16/17] doc: update qede pmd documentation

2016-08-26 Thread Rasesh Mody
Signed-off-by: Rasesh Mody --- doc/guides/nics/qede.rst |4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/doc/guides/nics/qede.rst b/doc/guides/nics/qede.rst index 50e6f87..8f132c9 100644 --- a/doc/guides/nics/qede.rst +++ b/doc/guides/nics/qede.rst @@ -65,6 +65,8 @@ Non-s

[dpdk-dev] [PATCH 15/17] qede: fix driver version string

2016-08-26 Thread Rasesh Mody
From: Harish Patil This patch fixes the base driver version display. The driver version notation is: Fixes: 2ea6f76 ("qede: add core driver") Signed-off-by: Harish Patil --- drivers/net/qede/qede_ethdev.c | 43 drivers/net/qede/qede_ethdev.h | 17

[dpdk-dev] [PATCH 14/17] qede: skip slowpath polling for 100G VF device

2016-08-26 Thread Rasesh Mody
From: Harish Patil There is no need to poll for slowpath events for VF device since the ramrod responses are received over PF-VF backchannel synchronously. So the fix is to restrict the slowpath polling for PF device only. Fixes 2af14ca ("net/qede: support 100G") Signed-off-by: Harish Patil --

[dpdk-dev] [PATCH 13/17] qede/base: add support to initiate PF FLR

2016-08-26 Thread Rasesh Mody
From: Harish Patil Add support to send PF FLR request to the management firmware to bringup the device in clean slate. This cleanup is necessary in some corner cases where the device would be left in a bad state from its previous operations. The driver will send PF FLR request before slowpath ini

[dpdk-dev] [PATCH 12/17] qede/base: change rx tx queue start APIs

2016-08-26 Thread Rasesh Mody
Changed q_{rx,tx}_start APIs to use common queue start parameters Signed-off-by: Rasesh Mody --- drivers/net/qede/base/ecore_l2.c | 131 +++--- drivers/net/qede/base/ecore_l2.h | 26 ++- drivers/net/qede/base/ecore_l2_api.h | 69 -- dr

[dpdk-dev] [PATCH 11/17] qede:add scatter gather support

2016-08-26 Thread Rasesh Mody
From: Sony Chacko Add scatter gather support, to enable trasmit and receive of packets larger than descriptor buffer sizes. Signed-off-by: Sony Chacko --- doc/guides/nics/features/qede.ini|1 + doc/guides/nics/features/qede_vf.ini |1 + doc/guides/nics/qede.rst |4

[dpdk-dev] [PATCH 10/17] qede: fix RSS related issues

2016-08-26 Thread Rasesh Mody
From: Harish Patil This patch contains few RSS related changes as follows: o Fix inadvarent initializing of rss_params outside of the if block in qed_update_vport() which could cause FW exception. o Fix disabling of RSS when hash function is 0. o Rename qede_config_rss() to qede_check_vport_

[dpdk-dev] [PATCH 09/17] qede: add enable/disable VLAN filtering

2016-08-26 Thread Rasesh Mody
From: Harish Patil The device doesn't explicitly support enable/disable of VLAN filtering. However, VLAN filtering takes effect when a matching VLAN is configured. So in order to support enable/disable of VLAN filtering, VLAN 0 is added/removed respectively. A check is added to ensure that the us

[dpdk-dev] [PATCH 08/17] qede: fix to prevent duplicate VLAN filters

2016-08-26 Thread Rasesh Mody
From: Harish Patil librte_ether does not keep track of VLAN filters configured, so it becomes driver's responsibility to keep track of it and prevent duplicate filter programming. The fix is to use a singly linked list for tracking the entries and there by prevent duplicates. Fixes: 2ea6f76 ("qe

[dpdk-dev] [PATCH 07/17] qede: remove unused/dead code

2016-08-26 Thread Rasesh Mody
From: Harish Patil Fixes: 2ea6f76 ("qede: add core driver") Signed-off-by: Harish Patil --- drivers/net/qede/qede_eth_if.c | 10 -- drivers/net/qede/qede_ethdev.c |3 --- drivers/net/qede/qede_ethdev.h | 12 drivers/net/qede/qede_if.h |9 - 4 files

[dpdk-dev] [PATCH 06/17] qede: add missing 100G link speed capability

2016-08-26 Thread Rasesh Mody
From: Harish Patil This patch fixes the missing 100G link speed advertisement when the 100G support was initially added. Fixes 2af14ca ("net/qede: support 100G") Signed-off-by: Harish Patil --- doc/guides/nics/features/qede.ini|1 + doc/guides/nics/features/qede_vf.ini |1 + drive

[dpdk-dev] [PATCH 05/17] qede/base: allow MTU change via vport-update

2016-08-26 Thread Rasesh Mody
From: Harish Patil Add support to allow MTU change on a deactivated vport in the qede/base driver and the core driver shall utilize the same. Signed-off-by: Harish Patil --- drivers/net/qede/base/ecore_l2.c |5 + drivers/net/qede/base/ecore_l2_api.h |4 drivers/net/qede/qe

[dpdk-dev] [PATCH 04/17] qede: fix port (re)configuration issue

2016-08-26 Thread Rasesh Mody
From: Harish Patil Some applications set port configuration params like promisc mode before calling dev_start(). This config results in a firmware exception since this operation internally translates to sending of VPORT-UPDATE before VPORT-START ramrod which is considered illegal from firmware st

[dpdk-dev] [PATCH 03/17] qede: enable support for unequal number of RX/TX queues

2016-08-26 Thread Rasesh Mody
From: Sony Chacko Previous release of the qede PMD had a limitation that the driver expects the number of tx and rx queues to be the same. This patch fixes this issue by making appropriate changes in control and data path. Fixes: 2ea6f76 ("qede: add core driver") Signed-off-by: Sony Chacko ---

[dpdk-dev] [PATCH 02/17] qede/base: add the driver support for the MFW crash dump

2016-08-26 Thread Rasesh Mody
Signed-off-by: Rasesh Mody --- drivers/net/qede/base/ecore.h |3 + drivers/net/qede/base/ecore_dev.c | 22 ++--- drivers/net/qede/base/ecore_dev_api.h | 29 --- drivers/net/qede/base/ecore_mcp.c | 151 + drivers/net/qede/base/ecore_mcp.

[dpdk-dev] [PATCH 01/17] qede/base: update base driver

2016-08-26 Thread Rasesh Mody
This patch updates the base driver and incorporates neccessary changes required to bring in the new firmware 8.10.9.0. In addition, it would allow driver to add new functionalities that might be needed in future. Signed-off-by: Rasesh Mody --- doc/guides/nics/features/qede.ini |

[dpdk-dev] [PATCH 00/17] update qede pmd to 1.2.0.1

2016-08-26 Thread Rasesh Mody
This patch set includes changes to update the base driver, work with newer FW, adds new features, provides bug fixes and updates documentation for the QEDE poll mode driver. The patch set updates the QEDE PMD to 1.2.0.1. Please apply to DPDK tree for v1611 release. Thanks! Rasesh Harish Patil (

[dpdk-dev] [PATCH 3/3] hash: modify lookup bulk pipeline

2016-08-26 Thread Pablo de Lara
From: Byron Marohn This patch replaces the pipelined rte_hash lookup mechanism with a loop-and-jump model, which performs significantly better, especially for smaller table sizes and smaller table occupancies. Signed-off-by: Byron Marohn Signed-off-by: Saikrishna Edupuganti Signed-off-by: Pabl

[dpdk-dev] [PATCH 2/3] hash: add vectorized comparison

2016-08-26 Thread Pablo de Lara
From: Byron Marohn In lookup bulk function, the signatures of all entries are compared against the signature of the key that is being looked up. Now that all the signatures are together, they can be compared with vector instructions (SSE, AVX2), achieving higher lookup performance. Also, entries

[dpdk-dev] [PATCH 1/3] hash: reorganize bucket structure

2016-08-26 Thread Pablo de Lara
From: Byron Marohn Move current signatures of all entries together in the bucket and same with all alternative signatures, instead of having current and alternative signatures together per entry in the bucket. This will be benefitial in the next commits, where a vectorized comparison will be perf

[dpdk-dev] [PATCH 0/3] Cuckoo hash lookup enhancements

2016-08-26 Thread Pablo de Lara
This patchset improves lookup performance on the current hash library by changing the existing lookup bulk pipeline, with an improved pipeline, based on a loop-and-jump model, instead of the current 4-stage 2-entry pipeline. Also, x86 vectorized intrinsics are used to improve performance when compa

[dpdk-dev] [PATCH 3/3] hash: check if slot is empty with key index

2016-08-26 Thread Pablo de Lara
Instead of checking if the current and alternative signatures are 0, it is faster to check if the key index associated to an entry is 0, meaning that the slot is empty. Signed-off-by: Pablo de Lara --- lib/librte_hash/rte_cuckoo_hash.c | 16 lib/librte_hash/rte_cuckoo_hash.h

[dpdk-dev] [PATCH 2/3] hash: fix false zero signature key hit lookup

2016-08-26 Thread Pablo de Lara
This commit fixes a corner case scenario. When a key is deleted, its signature in the hash table gets clear, which should prevent a lookup of that same key, unless the signature of the key is all zeroes. In that case, there will be a match, and key would be compared against the key that is in the

[dpdk-dev] [PATCH 1/3] hash: fix ring size

2016-08-26 Thread Pablo de Lara
Ring stores the free slots available to be used in the key table. The ring size was being increased by 1, because of the dummy slot, used for key misses, but this is not actually stored in the ring, so there is no need to increase it. Fixes: 5915699153d7 ("hash: fix scaling by reducing contention"

[dpdk-dev] [PATCH 0/3] Hash library fixes

2016-08-26 Thread Pablo de Lara
This patchset includes some minor fixes to the hash library, plus a small improvement in checking for an empty slot when performing different hash operations. Pablo de Lara (3): hash: fix ring size hash: fix false zero signature key hit lookup hash: check if slot is empty with key index li

[dpdk-dev] [PATCH 2/2] ip_pipeline: enable swap action in network layers configuration file

2016-08-26 Thread Jasvinder Singh
The network_layers configuration file (config/network_layers.cfg) demonstrates the various network layer components such as TCP, UDP, ICMP etc, which can be easily integrated into ip pipeline infrastructure. The loopback function (implemented using passthrough pipeline) is updated to perform swap

[dpdk-dev] [PATCH 1/2] ip_pipeline: add packet fields swap action to pass-through pipeline

2016-08-26 Thread Jasvinder Singh
Pass-through pipeline is updated with addition of packet fields swap action. To enable swap action, new entry i.e 'swap' is required in the passthrough pipeline section of the configuration file, and this entry contains the offsets (in bytes) of the packet fields to be swapped. Each swap entry spe

[dpdk-dev] [PATCH v1] add mtu set in virtio

2016-08-26 Thread souvikdey33
This functionality is required mostly in the cloud infrastructure. For example, if we use gre or vxlan network between compute and controller, then we should not use 1500 mtu in the guest as with encapsulation the sixe of the packet will be more and will get dropped in the infrastructure. So, in t

[dpdk-dev] [PATCH v8 25/25] eal/pci: Create rte_device list and fallback on its members

2016-08-26 Thread Shreyansh Jain
Now that rte_device is available, drivers can start using its members (numa, name) as well as link themselves into another rte_device list. As of now no one is using this list, but can be used for moving over all devices (pdev/vdev/Xdev) and perform bulk actions (like cleanup). Signed-off-by: Jan

[dpdk-dev] [PATCH v8 24/25] eal: introduce rte_device

2016-08-26 Thread Shreyansh Jain
Signed-off-by: Jan Viktorin Signed-off-by: Shreyansh Jain --- lib/librte_eal/common/eal_common_dev.c | 13 + lib/librte_eal/common/include/rte_dev.h | 31 +++ 2 files changed, 44 insertions(+) diff --git a/lib/librte_eal/common/eal_common_dev.c b/lib/li

[dpdk-dev] [PATCH v8 23/25] eal: call rte_eal_driver_register

2016-08-26 Thread Shreyansh Jain
To register both vdev and pci drivers into the list of all rte_driver, we have to call rte_eal_driver_register explicitly. Signed-off-by: Jan Viktorin Signed-off-by: Shreyansh Jain --- lib/librte_eal/common/eal_common_pci.c | 2 ++ lib/librte_eal/common/eal_common_vdev.c | 2 ++ 2 files change

[dpdk-dev] [PATCH v8 22/25] eal/pci: inherit rte_driver by rte_pci_driver

2016-08-26 Thread Shreyansh Jain
Remove the 'name' member from rte_pci_driver and move to generic rte_driver. Most of the PMD drivers were initially using DRIVER_REGISTER_PCI(..) as well as assigning a name to eth_driver.pci_drv.name member. In this patch, only the original DRIVER_REGISTER_PCI(..) name has been populated into the

[dpdk-dev] [PATCH v8 21/25] eal: rename and move rte_pci_resource

2016-08-26 Thread Shreyansh Jain
There is no need to have a custom memory resource representation for each infrastructure (PCI, ...) as it would always have the same members. Signed-off-by: Jan Viktorin Signed-off-by: Shreyansh Jain --- drivers/net/szedata2/rte_eth_szedata2.c | 4 ++-- lib/librte_eal/common/include/rte_dev.h

[dpdk-dev] [PATCH v8 20/25] eal: rte_pci.h includes rte_dev.h

2016-08-26 Thread Shreyansh Jain
Further refactoring and generalization of PCI infrastructure will require access to the rte_dev.h contents. Signed-off-by: Jan Viktorin Signed-off-by: Shreyansh Jain --- lib/librte_eal/common/include/rte_pci.h | 1 + 1 file changed, 1 insertion(+) diff --git a/lib/librte_eal/common/include/rte

[dpdk-dev] [PATCH v8 19/25] eal: remove PMD_DRIVER_REGISTER and unused pmd_types

2016-08-26 Thread Shreyansh Jain
- All devices register themselfs by calling a kind of DRIVER_REGISTER_XXX. The PMD_REGISTER_DRIVER is not used anymore. - PMD_VDEV type is also not being used - can be removed from all VDEVs. Note: PMD_REGISTER_DRIVER usage by PMDINFO tool and its documentation has not yet been removed. Signed-

[dpdk-dev] [PATCH v8 18/25] eal: move init/uninit to rte_vdev_driver

2016-08-26 Thread Shreyansh Jain
These functions are virtual-device specific and they are never called for any PCI driver (after introducing DRIVER_REGISTER_PCI, there is no way to do it). All affected drivers are updated. The prototypes are renamed to rte_vdev_init_t and rte_vdev_uninit_t. Signed-off-by: Jan Viktorin Signed-of

[dpdk-dev] [PATCH v8 17/25] drivers: convert PMD_VDEV drivers to use rte_vdev_driver

2016-08-26 Thread Shreyansh Jain
All PMD_VDEV drivers can now use rte_vdev_driver instead of the rte_driver (which is embedded in the rte_vdev_driver). Signed-off-by: Jan Viktorin Signed-off-by: Shreyansh Jain --- drivers/crypto/aesni_gcm/aesni_gcm_pmd.c | 14 -- drivers/crypto/aesni_mb/rte_aesni_mb_pmd.c | 14 ++

[dpdk-dev] [PATCH v8 16/25] eal: Remove PDEV/VDEV unused code

2016-08-26 Thread Shreyansh Jain
- Remove checks for VDEV from rte_eal_vdev_(init/uninint) as all devices are inherently virtual here. - PDEVs perform PCI specific inits - rte_eal_dev_init() need not call rte_driver->init(); Signed-off-by: Jan Viktorin Signed-off-by: Shreyansh Jain --- lib/librte_eal/common/eal_common_dev.

[dpdk-dev] [PATCH v8 15/25] eal: extract vdev infra

2016-08-26 Thread Shreyansh Jain
Move all PMD_VDEV-specific code into a separate module and header file to not polute the generic code anymore. There is now a list of virtual devices available. The rte_vdev_driver integrates the original rte_driver inside (C inheritance). The rte_driver will be however change in the future to ser

[dpdk-dev] [PATCH v8 14/25] ethdev: get rid of device type

2016-08-26 Thread Shreyansh Jain
Now that hotplug has been moved to eal, there is no reason to keep the device type in this layer. Signed-off-by: David Marchand Signed-off-by: Shreyansh Jain --- app/test/virtual_pmd.c| 2 +- drivers/net/af_packet/rte_eth_af_packet.c | 2 +- drivers/net/bonding/rte_eth_bon

[dpdk-dev] [PATCH v8 13/25] ethdev: convert to eal hotplug

2016-08-26 Thread Shreyansh Jain
Remove bus logic from ethdev hotplug by using eal for this. Current api is preserved: - the last port that has been created is tracked to return it to the application when attaching, - the internal device name is reused when detaching. We can not get rid of ethdev hotplug yet since we still nee

[dpdk-dev] [PATCH v8 12/25] eal: add hotplug operations for pci and vdev

2016-08-26 Thread Shreyansh Jain
Hotplug invocations, which deals with devices, should come from the layer that already handles them, i.e. EAL. For both attach and detach operations, 'name' is used to select the bus that will handle the request. Signed-off-by: David Marchand Signed-off-by: Shreyansh Jain --- lib/librte_eal/bs

[dpdk-dev] [PATCH v8 11/25] ethdev: do not scan all pci devices on attach

2016-08-26 Thread Shreyansh Jain
No need to scan all devices, we only need to update the device being attached. Signed-off-by: David Marchand Signed-off-by: Shreyansh Jain --- lib/librte_eal/common/eal_common_pci.c | 11 --- lib/librte_ether/rte_ethdev.c | 3 --- 2 files changed, 8 insertions(+), 6 deletions(

[dpdk-dev] [PATCH v8 10/25] eal/pci: Helpers for device name parsing/update

2016-08-26 Thread Shreyansh Jain
- Move rte_eth_dev_create_unique_device_name() from ether/rte_ethdev.c to common/include/rte_pci.h as rte_eal_pci_device_name(). Being a common method, can be used across crypto/net PCI PMDs. - Remove crypto specific routine and fallback to common name function. - Introduce a eal private Update

[dpdk-dev] [PATCH v8 09/25] driver: Remove driver register callbacks for crypto/net

2016-08-26 Thread Shreyansh Jain
Now that all pdev are pci drivers, we don't need to register crypto and ethdev drivers through a dedicated channel. Signed-off-by: David Marchand Signed-off-by: Shreyansh Jain --- lib/librte_cryptodev/rte_cryptodev.c | 22 --- lib/librte_cryptodev/rte_cryptodev_pmd.h

[dpdk-dev] [PATCH v8 08/25] drivers: convert all pdev drivers as pci drivers

2016-08-26 Thread Shreyansh Jain
Simplify crypto and ethdev pci drivers init by using newly introduced init macros and helpers. Those drivers then don't need to register as "rte_driver"s anymore. Exceptions: - virtio and mlx* use RTE_INIT directly as they have custom initialization steps. - VDEV devices are not modified - they

[dpdk-dev] [PATCH v8 07/25] driver: init/uninit common wrappers for PCI drivers

2016-08-26 Thread Shreyansh Jain
crypto and ethdev drivers aligned to PCI probe/remove. Existing handlers for init/uninit can be easily reused for this. Signed-off-by: David Marchand Signed-off-by: Shreyansh Jain --- lib/librte_cryptodev/rte_cryptodev.c | 16 lib/librte_cryptodev/rte_cryptodev_pmd.h

[dpdk-dev] [PATCH v8 06/25] eal: introduce init macros

2016-08-26 Thread Shreyansh Jain
Introduce a RTE_INIT macro used to mark an init function as a constructor. Current eal macros have been converted to use this (no functional impact). DRIVER_REGISTER_PCI is added as a helper for pci drivers. Suggested-by: Jan Viktorin Signed-off-by: David Marchand Signed-off-by: Shreyansh Jain

[dpdk-dev] [PATCH v8 05/25] drivers: align pci driver definitions

2016-08-26 Thread Shreyansh Jain
Pure coding style, but it might make it easier later if we want to move fields in rte_cryptodev_driver and eth_driver structures. Signed-off-by: David Marchand Signed-off-by: Shreyansh Jain --- drivers/crypto/qat/rte_qat_cryptodev.c | 2 +- drivers/net/ena/ena_ethdev.c | 2 +- drivers

[dpdk-dev] [PATCH v8 04/25] crypto: no need for a crypto pmd type

2016-08-26 Thread Shreyansh Jain
This information is not used and just adds noise. Signed-off-by: David Marchand Signed-off-by: Shreyansh Jain --- lib/librte_cryptodev/rte_cryptodev.c | 8 +++- lib/librte_cryptodev/rte_cryptodev.h | 2 -- lib/librte_cryptodev/rte_cryptodev_pmd.h | 3 +-- 3 files changed, 4 insertio

[dpdk-dev] [PATCH v8 03/25] pci: no need for dynamic tailq init

2016-08-26 Thread Shreyansh Jain
These lists can be initialized once and for all at build time. With this, those lists are only manipulated in a common place (and we could even make them private). A nice side effect is that pci drivers can now register in constructors. Signed-off-by: David Marchand Reviewed-by: Jan Viktorin Si

[dpdk-dev] [PATCH v8 02/25] eal: remove duplicate function declaration

2016-08-26 Thread Shreyansh Jain
rte_eal_dev_init is declared in both eal_private.h and rte_dev.h since its introduction. This function has been exported in ABI, so remove it from eal_private.h Fixes: e57f20e05177 ("eal: make vdev init path generic for both virtual and pci devices") Signed-off-by: David Marchand Signed-off-by:

[dpdk-dev] [PATCH v8 01/25] eal: define macro container_of

2016-08-26 Thread Shreyansh Jain
Signed-off-by: Jan Viktorin Signed-off-by: Shreyansh Jain --- 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 v8 00/25] Introducing rte_driver/rte_device generalization

2016-08-26 Thread Shreyansh Jain
Based on master (e22856313fff2) Background: === It includes two different patch-sets floated on ML earlier: * Original patch series is from David Marchand [1], [2]. `- This focused mainly on PCI (PDEV) part `- v7 of this was posted by me [8] in August/2016 * Patch series [4] from Ja

[dpdk-dev] [RFC][PATCH 0/3] example/vhost: Introduce Vswitch Framework

2016-08-26 Thread Maxime Coquelin
On 08/27/2016 06:26 PM, Pankaj Chauhan wrote: > Introduce generic vswitch framework in vhost-switch application. Following > are the goals/aim of the framework: > > 1. Make vhost-switch application generic so that it can support devices > which don't support VMDQ. > > 2. Provide a framework so th

[dpdk-dev] FW: [PATCH v6 0/9] enable lpm, acl and other missing libraries in ppc64le

2016-08-26 Thread Chao Zhu
Thomas, Any comments of this patch set? Are we waiting for more acks? Thank you! -Original Message- From: dev [mailto:dev-boun...@dpdk.org] On Behalf Of Chao Zhu Sent: 2016?8?17? 16:49 To: 'Gowrishankar Muthukrishnan' ; dev at dpdk.org Cc: 'Bruce Richardson' ; 'Konstantin Ananyev' ; 'Tho

[dpdk-dev] [PATCH 13/13] net/thunderx: document secondary queue set support

2016-08-26 Thread Kamil Rytarowski
From: Kamil Rytarowski Signed-off-by: Maciej Czekaj Signed-off-by: Kamil Rytarowski Signed-off-by: Zyta Szpak Signed-off-by: Slawomir Rosek Signed-off-by: Radoslaw Biernacki Signed-off-by: Jerin Jacob --- doc/guides/nics/thunderx.rst | 114 --- 1 fil

[dpdk-dev] [PATCH 12/13] net/thunderx: add final bits for secondary queue support

2016-08-26 Thread Kamil Rytarowski
From: Kamil Rytarowski Signed-off-by: Maciej Czekaj Signed-off-by: Kamil Rytarowski Signed-off-by: Zyta Szpak Signed-off-by: Slawomir Rosek Signed-off-by: Radoslaw Biernacki Signed-off-by: Jerin Jacob --- drivers/net/thunderx/nicvf_ethdev.c | 178 +--- 1 fil

[dpdk-dev] [PATCH 11/13] net/thunderx: add secondary qset support in device configure

2016-08-26 Thread Kamil Rytarowski
From: Kamil Rytarowski Signed-off-by: Maciej Czekaj Signed-off-by: Kamil Rytarowski Signed-off-by: Zyta Szpak Signed-off-by: Slawomir Rosek Signed-off-by: Radoslaw Biernacki Signed-off-by: Jerin Jacob --- drivers/net/thunderx/nicvf_ethdev.c | 65 + 1 fil

[dpdk-dev] [PATCH 10/13] net/thunderx: add secondary qset support in device start

2016-08-26 Thread Kamil Rytarowski
From: Kamil Rytarowski Signed-off-by: Maciej Czekaj Signed-off-by: Kamil Rytarowski Signed-off-by: Zyta Szpak Signed-off-by: Slawomir Rosek Signed-off-by: Radoslaw Biernacki Signed-off-by: Jerin Jacob --- drivers/net/thunderx/nicvf_ethdev.c | 266 +++- 1 fil

[dpdk-dev] [PATCH 09/13] net/thunderx: add secondary qset support in dev stop/close

2016-08-26 Thread Kamil Rytarowski
From: Kamil Rytarowski Signed-off-by: Maciej Czekaj Signed-off-by: Kamil Rytarowski Signed-off-by: Zyta Szpak Signed-off-by: Slawomir Rosek Signed-off-by: Radoslaw Biernacki Signed-off-by: Jerin Jacob --- drivers/net/thunderx/nicvf_ethdev.c | 142 +++- 1 fil

[dpdk-dev] [PATCH 08/13] net/thunderx: add helper utils for secondary qset support

2016-08-26 Thread Kamil Rytarowski
From: Kamil Rytarowski Signed-off-by: Maciej Czekaj Signed-off-by: Kamil Rytarowski Signed-off-by: Zyta Szpak Signed-off-by: Slawomir Rosek Signed-off-by: Radoslaw Biernacki Signed-off-by: Jerin Jacob --- drivers/net/thunderx/nicvf_ethdev.h | 39 + 1 fil

[dpdk-dev] [PATCH 07/13] net/thunderx: fix multiprocess support in stats

2016-08-26 Thread Kamil Rytarowski
From: Kamil Rytarowski In case of the multiprocess mode a shared nicvf struct between processes cannot point with the eth_dev pointer to master device, therefore remove it allong with references to it refactoring the code where needed. Fixes: 7413feee662d ("net/thunderx: add device start/stop an

[dpdk-dev] [PATCH 06/13] net/thunderx: add secondary queue set in interrupt functions

2016-08-26 Thread Kamil Rytarowski
From: Kamil Rytarowski Signed-off-by: Maciej Czekaj Signed-off-by: Kamil Rytarowski Signed-off-by: Zyta Szpak Signed-off-by: Slawomir Rosek Signed-off-by: Radoslaw Biernacki Signed-off-by: Jerin Jacob --- drivers/net/thunderx/nicvf_ethdev.c | 41 ++--- 1 fil

[dpdk-dev] [PATCH 05/13] net/thunderx: add family of functions to store DPDK qsets

2016-08-26 Thread Kamil Rytarowski
From: Kamil Rytarowski These functions (nicvf_svf) are DPDK specialization of base/nicvf_bsvf.[ch] ones. Signed-off-by: Maciej Czekaj Signed-off-by: Kamil Rytarowski Signed-off-by: Zyta Szpak Signed-off-by: Slawomir Rosek Signed-off-by: Radoslaw Biernacki Signed-off-by: Jerin Jacob --- dr

[dpdk-dev] [PATCH 04/13] net/thunderx/base: add secondary queue set support

2016-08-26 Thread Kamil Rytarowski
From: Kamil Rytarowski Changes: - add new message sqs_alloc in mailbox - add a queue container to hold secondary qsets. - add nicvf_mbox_request_sqs - handle new mailbox messages for secondary queue set support - register secondary queue sets for furthe reuse - register the number secondary

[dpdk-dev] [PATCH 03/13] net/thunderx/base: add family of functions to store qsets

2016-08-26 Thread Kamil Rytarowski
From: Kamil Rytarowski This interface (nicvf_bsvf) will be used for secondary queue set support. Signed-off-by: Maciej Czekaj Signed-off-by: Kamil Rytarowski Signed-off-by: Zyta Szpak Signed-off-by: Slawomir Rosek Signed-off-by: Radoslaw Biernacki Signed-off-by: Jerin Jacob --- drivers/ne

[dpdk-dev] [PATCH 02/13] net/thunderx: correct transmit checksum handling

2016-08-26 Thread Kamil Rytarowski
From: Kamil Rytarowski The symbols PKT_TX_TCP_CKSUM and PKT_TX_UDP_CKSUM are not bits on a bitmask. Set l3_offset always for TX offloads, not just for PKT_TX_IP_CKSUM being true. Fixes: 1c421f18e095 ("net/thunderx: add single and multi-segment Tx") Signed-off-by: Maciej Czekaj Signed-off-by: K

[dpdk-dev] [PATCH 01/13] net/thunderx: cleanup the driver before adding new features

2016-08-26 Thread Kamil Rytarowski
From: Kamil Rytarowski Refactored features: - enable nicvf_qset_rbdr_precharge to handle handle secondary queue sets - rte_free already handles NULL pointer - check mempool flags to predict being contiguous in memory - allow to use mempool with multiple memory chunks - simplify local constru

[dpdk-dev] [PATCH 00/13] Add support for secondary queue set in nicvf thunderx driver

2016-08-26 Thread Kamil Rytarowski
This series of patches adds support for secondary queue set in nicvf thunderx driver There are two types of VFs: - Primary VF - Secondary VF Each port consist of a primary VF and n secondary VF(s). Each VF provides 8 Tx/Rx queues to a port. In case port is configured to use more than 8 queues,

[dpdk-dev] [PATCH] app/test: add 3DES tests into QuickAssist PMD testsuite

2016-08-26 Thread Fiona Trahe (fiona.tr...@intel.com)
From: Fiona Trahe This patch depends on * 3DES QuickAssist driver patch: http://dpdk.org/dev/patchwork/patch/15413/ * libcrypto test patch: http://dpdk.org/dev/patchwork/patch/15344/ Signed-off-by: Fiona Trahe --- app/test/test_cryptodev.c | 68 +

[dpdk-dev] [PATCH 6/6] testpmd: add txprep engine

2016-08-26 Thread Tomasz Kulasek
This patch adds txprep engine to the testpmd application. Txprep engine is intended to verify Tx preparation functionality implemented in pmd driver. It's based on the default "io" engine with the folowing changes: - Tx HW offloads are reset in incoming packet, - burst is passed to the Tx prepa

[dpdk-dev] [PATCH 5/6] ixgbe: add Tx preparation

2016-08-26 Thread Tomasz Kulasek
Signed-off-by: Tomasz Kulasek --- drivers/net/ixgbe/ixgbe_ethdev.c |3 ++ drivers/net/ixgbe/ixgbe_ethdev.h |8 +++- drivers/net/ixgbe/ixgbe_rxtx.c | 83 +- drivers/net/ixgbe/ixgbe_rxtx.h |2 + 4 files changed, 94 insertions(+), 2 deletions(-)

[dpdk-dev] [PATCH 4/6] i40e: add Tx preparation

2016-08-26 Thread Tomasz Kulasek
Signed-off-by: Tomasz Kulasek --- drivers/net/i40e/i40e_ethdev.c |3 ++ drivers/net/i40e/i40e_rxtx.c | 98 +++- drivers/net/i40e/i40e_rxtx.h | 10 3 files changed, 110 insertions(+), 1 deletion(-) diff --git a/drivers/net/i40e/i40e_ethdev.c b/

[dpdk-dev] [PATCH 3/6] fm10k: add Tx preparation

2016-08-26 Thread Tomasz Kulasek
Signed-off-by: Tomasz Kulasek --- drivers/net/fm10k/fm10k.h|9 drivers/net/fm10k/fm10k_ethdev.c |5 +++ drivers/net/fm10k/fm10k_rxtx.c | 87 +- 3 files changed, 100 insertions(+), 1 deletion(-) diff --git a/drivers/net/fm10k/fm10k.h b/

[dpdk-dev] [PATCH 2/6] e1000: add Tx preparation

2016-08-26 Thread Tomasz Kulasek
Signed-off-by: Tomasz Kulasek --- drivers/net/e1000/e1000_ethdev.h | 11 + drivers/net/e1000/em_ethdev.c|5 +++- drivers/net/e1000/em_rxtx.c | 46 ++- drivers/net/e1000/igb_ethdev.c |4 +++ drivers/net/e1000/igb_rxtx.c | 50

[dpdk-dev] [PATCH 1/6] ethdev: add Tx preparation

2016-08-26 Thread Tomasz Kulasek
Added API for `rte_eth_tx_prep` uint16_t rte_eth_tx_prep(uint8_t port_id, uint16_t queue_id, struct rte_mbuf **tx_pkts, uint16_t nb_pkts) Added fields to the `struct rte_eth_desc_lim`: uint16_t nb_seg_max; /**< Max number of segments per whole packet. */

[dpdk-dev] [PATCH 0/6] add Tx preparation

2016-08-26 Thread Tomasz Kulasek
As discussed in that thread: http://dpdk.org/ml/archives/dev/2015-September/023603.html Different NIC models depending on HW offload requested might impose different requirements on packets to be TX-ed in terms of: - Max number of fragments per packet allowed - Max number of fragments per TSO

[dpdk-dev] [PATCH] ethdev: fix statistics description

2016-08-26 Thread Wei Dai
Add comments to describe that not all statistics fields in struct rte_eth_stats are supported by any type of network interface card. If any statistics field is not supported, its value is 0. Fixes: af75078fece3 ("first public release") Signed-off-by: Wei Dai --- lib/librte_ether/rte_ethdev.h |

[dpdk-dev] [PATCH 0/6] add Tx preparation

2016-08-26 Thread Tomasz Kulasek
As discussed in that thread: http://dpdk.org/ml/archives/dev/2015-September/023603.html Different NIC models depending on HW offload requested might impose different requirements on packets to be TX-ed in terms of: - Max number of fragments per packet allowed - Max number of fragments per TSO

[dpdk-dev] FW: [PATCH v6 0/9] enable lpm, acl and other missing libraries in ppc64le

2016-08-26 Thread Thomas Monjalon
2016-08-26 18:55, Chao Zhu: > Thomas, > > Any comments of this patch set? Are we waiting for more acks? Yes, especially for lpm and acl, a review from respective maintainers may be needed. Konstantin? Bruce? If no review is done in 1 week, it will be applied as-is. Gowrishankar, using --in-rep

[dpdk-dev] [PATCH 3/3] app/test: adding cuckoo hash table for testing

2016-08-26 Thread Sankar Chokkalingam
This patch includes cuckoo has table for testing all the APIs The cuckoo hash is added for both test_table_tables and test_table_combined cases. The testing is completed and the results are OK. Signed-off-by: Sankar Chokkalingam Signed-off-by: Guruprasad Rao --- app/test/test_table_combined.c |

[dpdk-dev] [PATCH 2/3] app/test-pipeline: added cuckoo hash for benchmarking

2016-08-26 Thread Sankar Chokkalingam
This patch inclides cuckoo hash table into test-pipeline This allows to benchmark the performance of the cuckoo hash table The following key sizes are supported for cuckoo hash table 8, 16, 32, 48, 64, 80, 96, 112 and 128. The test-pipeline can be run using the following command ./app/test

[dpdk-dev] [PATCH 1/3] lib/librte_table: enabling cuckoo hash into table library

2016-08-26 Thread Sankar Chokkalingam
This patch provides table apis for dosig version of cuckoo hash via rte_table_hash_cuckoo_dosig_ops The following apis are implemented for cuckoo hash rte_table_hash_cuckoo_create rte_table_hash_cuckoo_free rte_table_hash_cuckoo_entry_add rte_table_hash_cuckoo_entr

[dpdk-dev] [PATCH 0/3] Enable cuckoo hash in table library

2016-08-26 Thread Sankar Chokkalingam
This patchset implements the table APIs for cuckoo hash. This will enable any dpdk application to use the cuckoo hash table apis instead of the direct apis from lib/librte_hash The dosig version of the cuckoo hash is implemented in this patch with the following APIs rte_table_hash_cuckoo

[dpdk-dev] [PATCH v2 2/2] crypto/qat: adding support for 3DES cipher algorithm

2016-08-26 Thread Fiona Trahe (fiona.tr...@intel.com)
From: Fiona Trahe 3DES support added to QuickAssist PMD With CTR and CBC mode. Both cipher-only and chained with HMAC_SHAx This patch depends on following patch : crypto/qat: enable support of Kasumi F8 in QAT cryptodev http://dpdk.org/dev/patchwork/patch/15320/ Signed-off-by: Fiona Trahe

[dpdk-dev] [PATCH v2 1/2] crypto/qat: code cleanup

2016-08-26 Thread Fiona Trahe (fiona.tr...@intel.com)
From: Fiona Trahe Cleanup of unused code. Rename and simplify a badly named struct element, was aes, but used for all types of ciphers Print correct error msg (Unsupported rather than Undefined) for all ciphers not supported by qat PMD. Signed-off-by: Fiona Trahe --- drivers/crypto/qat/qat_adf

[dpdk-dev] [PATCH v2 0/2] Add 3DES support to Quickassist PMD

2016-08-26 Thread Fiona Trahe (fiona.tr...@intel.com)
From: Fiona Trahe Some preparatory cleanup done in QAT PMD for adding 3DES 3DES support added to QuickAssist PMD With CTR and CBC mode. Both cipher-only and chained with HMAC_SHAx 3DES test code is dependent on the libcrypto patch, so will be sent separately after that patch Changes since v

[dpdk-dev] [PATCH] kni: add support for older kernels

2016-08-26 Thread Thomas Monjalon
> +#if (defined(RHEL_RELEASE_CODE) && \ > + (RHEL_RELEASE_CODE >= RHEL_RELEASE_VERSION(6, 8)) && \ > + (LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 34))) > +#undef NET_NAME_UNKNOWN > +#endif Should the title be "kni: support RHEL 6.8"?

[dpdk-dev] [PATCH] ntnic: add PMD driver

2016-08-26 Thread Thomas Monjalon
Welcome, 2016-08-26 13:44, Finn Christensen: > +NTNIC Poll Mode Driver > +== > + > +The NTNIC poll mode driver library (**librte_pmd_ntnic**) implements support > +for **Napatech NIC** 40/50 Gbps adapters. > +This PMD is implemented as a pure software virtual device and must be

[dpdk-dev] [PATCH] ntnic: add PMD driver

2016-08-26 Thread Finn Christensen
> From: Thomas Monjalon [mailto:thomas.monjalon at 6wind.com] > Sent: 26. august 2016 16:44 > To: Finn Christensen > Cc: dev at dpdk.org > Subject: Re: [dpdk-dev] [PATCH] ntnic: add PMD driver > > Welcome, Thanks! > > 2016-08-26 13:44, Finn Christensen: > > +NTNIC Poll Mode Driver > > +=

[dpdk-dev] [PATCH 2/5] i40e: implement vector PMD for ARM architecture

2016-08-26 Thread Thomas Monjalon
Hi Jianbo (and other developers of vectorized PMDs), 2016-08-24 15:23, Jianbo Liu: > Use ARM NEON intrinsic to implement i40e vPMD Have you tried to use the generic SIMD intrinsics? We could maintain only one vectorized implementation by using __attribute__ ((vector_size (n))) as describe

[dpdk-dev] [PATCH] scripts: disable optimization for ABI validation

2016-08-26 Thread Ferruh Yigit
abi-dumper giving following warning: WARNING: incompatible build option detected: -O3 Although this patch won't fix warning, it is to ensure code compiled with optimization disabled. Signed-off-by: Ferruh Yigit --- scripts/validate-abi.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) d

[dpdk-dev] [PATCH v2 0/2] Add 3DES support to Quickassist PMD

2016-08-26 Thread Trahe, Fiona
Oops, sorry, typo in email address ! - will resend -Original Message- From: y at ecsmtp.ir.intel.com [mailto:y...@ecsmtp.ir.intel.com] Sent: Friday, August 26, 2016 4:40 PM To: dev at dpdk.org Cc: De Lara Guarch, Pablo ; Griffin, John ; Jain, Deepak K ; Kusztal, ArkadiuszX ; Trahe, Fion

[dpdk-dev] [RFC] drivers: advertise kmod dependencies in pmdinfo

2016-08-26 Thread Olivier Matz
Add a new macro DRIVER_REGISTER_KMOD_DEP() that allows a driver to declare the list of kernel modules required to run properly. Today, most PCI drivers require uio/vfio. Signed-off-by: Olivier Matz --- In this RFC, I supposed that all PCI drivers require a the loading of a uio/vfio module (exce

[dpdk-dev] [PATCH] tools: fix json output of pmdinfo

2016-08-26 Thread Olivier Matz
Using dpdk-pmdinfo with the '-r' flag does not produce a json output as documented. Instead, the python representation of the json object is shown, which is nearly the same, but cannot be properly parsed by a json parser. python repr (before): {u'pci_ids': [[5549, 1968, 65535, 65535]], u'name':

[dpdk-dev] [PATCH 0/5] i40e: vector poll-mode driver on ARM64

2016-08-26 Thread Jianbo Liu
On 24 August 2016 at 18:49, Thomas Monjalon wrote: > 2016-08-24 15:23, Jianbo Liu: >> This patch set is to implement i40e vector PMD on ARM64. > > Thanks for extending ARM support. > > The current NIC support status is: > % git grep -l 'ARM.*=.*Y' doc/guides/nics/features/ > doc/guides/nics/featu

[dpdk-dev] [PATCH] app/testpmd: configure flowgen packet size though --txpkts

2016-08-26 Thread maciej.cze...@caviumnetworks.com
From: Maciej Czekaj "flowgen" forwarding mode has fixed packet size (300). Let it re-use --txpkts option for specifying generated packet size. Signed-off-by: Maciej Czekaj --- app/test-pmd/config.c | 2 +- app/test-pmd/flowgen.c | 3 +-

[dpdk-dev] [PATCH] ntnic: add PMD driver

2016-08-26 Thread Finn Christensen
This is the Napatech NTNIC Poll Mode Driver (PMD) for DPDK. This patch adds support for Napatech NICs to DPDK. This is the inital implementation. Signed-off-by: Finn Christensen --- MAINTAINERS | 5 + config/common_base | 6 + doc/gui

  1   2   >