Re: [dpdk-dev] [PATCH v2] mbuf: document guideline for new fields and flags

2020-06-10 Thread Jerin Jacob
On Thu, Jun 11, 2020 at 12:02 PM Thomas Monjalon wrote: > > Since dynamic fields and flags were added in 19.11, > the idea was to use them for new features, not only PMD-specific. > > The guideline is made more explicit in doxygen, in the mbuf guide, > and in the contribution design guidelines. >

[dpdk-dev] [PATCH v2] mbuf: document guideline for new fields and flags

2020-06-10 Thread Thomas Monjalon
Since dynamic fields and flags were added in 19.11, the idea was to use them for new features, not only PMD-specific. The guideline is made more explicit in doxygen, in the mbuf guide, and in the contribution design guidelines. For more information about the original design, see the presentation

[dpdk-dev] [PATCH 5/5] app/testpmd: support query RSS config in flow query

2020-06-10 Thread Chenxu Di
This patch support RSS action in flow query. It can display the RSS configuration of the specified rule. Signed-off-by: Chenxu Di --- app/test-pmd/config.c | 55 +++ 1 file changed, 55 insertions(+) diff --git a/app/test-pmd/config.c b/app/test-pmd/config

[dpdk-dev] [PATCH 2/5] net/ixgbe: add private APIs

2020-06-10 Thread Chenxu Di
The legacy filter API will be superseded by rte_flow. There are also several small features which can not be implemented in rte_flow. This patch re-implemented these features as private API. Two APIs are added: rte_pmd_ixgbe_get_fdir_info. rte_pmd_ixgbe_get_fdir_stats. Signed-off-by: Chenxu Di --

[dpdk-dev] [PATCH 0/5] re-implement legacy filter functions by private API

2020-06-10 Thread Chenxu Di
The legacy filter API will be superseded by rte_flow. There are also several small features which can not be implemented in rte_flow. This patch re-implemented features get_fdir_info, get_fdir_stat and set_gre_key_len as private API. This patch also enable RSS action in flow query. Chenxu Di (5):

[dpdk-dev] [PATCH 4/5] net/i40e: enable flow query RSS

2020-06-10 Thread Chenxu Di
This patch enables flow query function to get the configuration ofthe specified rule. Signed-off-by: Chenxu Di --- drivers/net/i40e/i40e_flow.c | 51 1 file changed, 51 insertions(+) diff --git a/drivers/net/i40e/i40e_flow.c b/drivers/net/i40e/i40e_flow.c in

[dpdk-dev] [PATCH 3/5] app/testpmd: re-implement commands by using private API

2020-06-10 Thread Chenxu Di
The legacy filter API will be superseded. This patch use private api to change the implementation of commands global_config gre-key-len and show port fdir Signed-off-by: Chenxu Di --- app/test-pmd/cmdline.c | 23 - app/test-pmd/config.c | 74 +++---

[dpdk-dev] [PATCH 1/5] net/i40e: add private APIs

2020-06-10 Thread Chenxu Di
The legacy filter API will be superseded by rte_flow. There are also several small features which can not be implemented in rte_flow. This patch re-implemented these features as private API. Three APIs are added: rte_pmd_i40e_get_fdir_info. rte_pmd_i40e_get_fdir_stats. rte_pmd_i40e_set_gre_key_len.

Re: [dpdk-dev] [PATCH] mbuf: fix to update documentation of QinQ stripped bit interpretation

2020-06-10 Thread Thomas Monjalon
Ping Anybody volunteer to make a v2 please? 24/05/2020 17:34, Thomas Monjalon: > Somnath, why neither update, nor reply to reviews after February 7? > It is discouraging for reviewers. > > > 24/04/2020 20:24, Thomas Monjalon: > > Please Somnath, it is waiting for a v2. > > > > > > 26/02/2020

[dpdk-dev] [PATCH 6/7] crypto/octeontx2: remove unsupported feature

2020-06-10 Thread Ankur Dwivedi
For SNOW and ZUC algos the offset value for enryption and decryption is converted to bytes. Hence RTE_CRYPTODEV_FF_NON_BYTE_ALIGNED_DATA feature is not supported by the octeontx2 crypto pmd. Fixes: 51f3e107aca2 ("crypto/octeontx2: enable non-byte aligned data") Signed-off-by: Ankur Dwivedi ---

[dpdk-dev] [PATCH 7/7] test/crypto: use generic cryptotests for OCTEON TX PMDs

2020-06-10 Thread Ankur Dwivedi
From: Anoob Joseph This patch enables the generic crypto tests for OCTEON TX PMDs. Reomves the PMD specific tests. Signed-off-by: Ankur Dwivedi Signed-off-by: Anoob Joseph --- app/test/test_cryptodev.c | 769 +- 1 file changed, 2 insertions(+), 767

[dpdk-dev] [PATCH 5/7] crypto/octeontx: remove unsupported feature

2020-06-10 Thread Ankur Dwivedi
For SNOW and ZUC algos the offset value for enryption and decryption is converted to bytes. Hence RTE_CRYPTODEV_FF_NON_BYTE_ALIGNED_DATA feature is not supported by the octeontx crypto pmd. Fixes: 32b8f26adf8b ("crypto/octeontx: enable non-byte aligned data") Signed-off-by: Ankur Dwivedi --- do

[dpdk-dev] [PATCH 0/7] test/crypto: use generic crypto auto test framework

2020-06-10 Thread Ankur Dwivedi
This patch series enables the generic auto test crypto framework for the OCTEON TX PMDs. The patch series also resolves the bugs observed while testing these test cases. Ankur Dwivedi (6): common/cpt: fix encryption offset crypto/octeontx: remove stats callback crypto/octeontx: set session p

[dpdk-dev] [PATCH 3/7] crypto/octeontx: set session private data

2020-06-10 Thread Ankur Dwivedi
This patch sets the first 32 bytes of session private data to zero. This prevents garbage data to be used in code logic. Signed-off-by: Ankur Dwivedi --- drivers/crypto/octeontx/otx_cryptodev_ops.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/crypto/octeontx/otx_cryptodev_ops.c

[dpdk-dev] [PATCH 1/7] common/cpt: fix encryption offset

2020-06-10 Thread Ankur Dwivedi
In case of gmac auth the encryption offset should be set to zero. Fixes: b74652f3a91f ("common/cpt: add microcode interface for encryption") Fixes: 177b41ceee61 ("common/cpt: add microcode interface for decryption") Signed-off-by: Ankur Dwivedi --- drivers/common/cpt/cpt_ucode.h | 24 ++

[dpdk-dev] [PATCH 2/7] crypto/octeontx: remove stats callback

2020-06-10 Thread Ankur Dwivedi
The stats get and reset functions for octeontx crypto PMD are unimplemented. So removing them. Signed-off-by: Ankur Dwivedi --- drivers/crypto/octeontx/otx_cryptodev_ops.c | 17 ++--- 1 file changed, 2 insertions(+), 15 deletions(-) diff --git a/drivers/crypto/octeontx/otx_cryptodev

[dpdk-dev] [PATCH 4/7] crypto/octeontx2: set session private data

2020-06-10 Thread Ankur Dwivedi
This patch sets the first 32 bytes of session private data to zero. This prevents garbage data to be used in code logic. Signed-off-by: Ankur Dwivedi --- drivers/crypto/octeontx2/otx2_cryptodev_ops.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/crypto/octeontx2/otx2_cryptodev_o

[dpdk-dev] [PATCH] net/i40e: enable port filter by switch filter

2020-06-10 Thread Guinan Sun
This patch enables the filter that supports to create following two rules for the same packet type: One is to select source port only as input set and the other is for destination port only. Signed-off-by: Guinan Sun --- doc/guides/rel_notes/release_20_08.rst | 7 + drivers/net/i40e/i40e_ethde

[dpdk-dev] [PATCH v1 0/2] virtio: restrict pointer aliasing for loops vectorization

2020-06-10 Thread Joyce Kong
This series is to optimize the virtio performance by using restrict pointer aliasing, which allows the compiler to vectorize loops more aggressively. The patches were benchmarked by running PVP case on ThunderX2 platform and showed positive performance results. Joyce Kong (2): net/virtio: restr

[dpdk-dev] [PATCH v1 2/2] lib/vhost: restrict pointer aliasing for packed path

2020-06-10 Thread Joyce Kong
Restrict pointer aliasing to allow the compiler to vectorize loops more aggressively. With this patch, a 9.6% improvement is observed in throughput for the packed virtio-net PVP case, and a 2.8% improvement in throughput for the packed virtio-user PVP case. All performance data are measured under

[dpdk-dev] [PATCH v1 1/2] net/virtio: restrict pointer aliasing for NEON vpmd

2020-06-10 Thread Joyce Kong
Restrict pointer aliasing to allow the compiler to vectorize loops more aggressively. With this patch, a 9.6% improvement is observed in throughput for the virtio-net PVP case, and a 2.4% perf improvement in throughput for the virtio-user PVP case. All performance data are measured under the 0.001

Re: [dpdk-dev] [PATCH 6/9] vhost: add support for virtio status

2020-06-10 Thread Xia, Chenbo
Hi Maxime, > -Original Message- > From: dev On Behalf Of Maxime Coquelin > Sent: Thursday, May 14, 2020 4:02 PM > To: Ye, Xiaolong ; shah...@mellanox.com; > ma...@mellanox.com; amore...@redhat.com; Wang, Xiao W > ; viachesl...@mellanox.com; dev@dpdk.org > Cc: jasow...@redhat.com; l...@red

[dpdk-dev] [PATCH v2] net/ice: support original VF action for DCF

2020-06-10 Thread Ting Xu
From: Qi Zhang Add support to allow the original VF actions in DCF. Signed-off-by: Qi Zhang Signed-off-by: Ting Xu --- v1->v2: correct commit log. --- drivers/net/ice/ice_switch_filter.c | 13 ++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/drivers/net/ice/ice_sw

[dpdk-dev] [PATCH v2] mbuf: fix out-of-bounds access

2020-06-10 Thread Xiaolong Ye
We should make sure off + size < sizeof(struct rte_mbuf) to avoid possible out-of-bounds access of free_space array, there is no issue currently due to the low bits of free_flags (which is adjacent to free_space) are always set to 0. But we shouldn't rely on it since it's fragile and layout of stru

Re: [dpdk-dev] [PATCH v2 00/52] net/ice: base code update

2020-06-10 Thread Ye Xiaolong
On 06/09, Qi Zhang wrote: >Upgrade base with below main changes > >1. add more protocol support - L2TPv3/ESP/AH/PFCP. >2. Add IPv6 prefix RSS support. >3. support GENEVE and VXLAN rules with VLAN. >4. Add E823L device IDs >5. couple bug fixes and code clean. > >v2: >- fix a bug in patch that cause

[dpdk-dev] [PATCH v4 2/2] test/cryptodev: add chacha poly test cases to cryptodev

2020-06-10 Thread Arek Kusztal
This patch adds Chacha20-Poly1305 implementation to cryptodev tests. Signed-off-by: Arek Kusztal --- v4: - resent in 20.08 DPDK window app/test/test_cryptodev.c | 18 ++- app/test/test_cryptodev_aead_test_vectors.h | 75 + 2 files changed, 92 in

[dpdk-dev] [PATCH v4 1/2] crypto/qat: add chacha poly implementation

2020-06-10 Thread Arek Kusztal
This patchset adds Chacha20-Poly1305 implementation to Intel QuickAssist Technology pmd. Signed-off-by: Arek Kusztal --- v4: - resent in 20.08 DPDK window This patch depends on "crypto/qat: add handling of multi process[1]." [1] http://patchwork.dpdk.org/patch/71213/ doc/guides/cryptodevs/fea

[dpdk-dev] [PATCH] crypto/qat: add handling of multi process

2020-06-10 Thread Arek Kusztal
This patch improves handling of multi process applications using Intel QuickAssist Technology PMD. Signed-off-by: Arek Kusztal --- drivers/common/qat/qat_device.c | 103 drivers/common/qat/qat_device.h | 69 +--- drivers/common/qa

[dpdk-dev] [PATCH 2/2] cryptodev: add cryptodev trace in multi process function

2020-06-10 Thread Arek Kusztal
From: Fiona Trahe This patch adds traces to some Cryptodev functions that are used in primary/secondary context. Signed-off-by: Fiona Trahe --- lib/librte_cryptodev/rte_cryptodev.c | 22 -- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/lib/librte_cryptodev/

[dpdk-dev] [PATCH 1/2] cryptodev: add function to check if qp was setup

2020-06-10 Thread Arek Kusztal
From: Fiona Trahe This patch adds function that can check if queue pair was already setup. This may be useful when dealing with multi process approach in cryptodev. Signed-off-by: Fiona Trahe --- lib/librte_cryptodev/rte_cryptodev.c | 28 lib/librte_cryptodev/rte_c

Re: [dpdk-dev] [PATCH v20.11 2/2] eal: improve device probing API

2020-06-10 Thread Gaëtan Rivet
On 10/06/20 19:08 +0200, Maxime Coquelin wrote: > Hi Gaëtan, > > On 6/10/20 2:06 PM, Gaëtan Rivet wrote: > > Hello Maxime, > > > > On 08/06/20 17:53 +0200, Maxime Coquelin wrote: > >> This patch makes rte_dev_probe() to return the > >> rte_device pointer on success and NULL on error > >> instead

[dpdk-dev] [RFC PATCH 0/6] Improve mlx5 PMD common driver framework for multiple classes

2020-06-10 Thread Parav Pandit
This commit introduces mlx5 bus to support multiple class of devices for a single PCI device. Motivation and example -- mlx5 PCI device supports multiple class of devices such as net, vdpa and regex devices. Currently only one pmd (either net or vdpa) can bind to this device.

[dpdk-dev] [RFC PATCH 4/6] bus/mlx5_pci: add mlx5 PCI bus

2020-06-10 Thread Parav Pandit
Add mlx5 PCI bus which enables multiple mlx5 drivers to bind to single pci device. Signed-off-by: Parav Pandit --- config/common_base| 6 ++ config/defconfig_arm64-bluefield-linuxapp-gcc | 6 ++ drivers/bus/meson.build | 2 +- drivers/bus/mlx5

[dpdk-dev] [RFC PATCH 2/6] common/mlx5: use class enable check helper function

2020-06-10 Thread Parav Pandit
Currently mlx5_class_get() returns enabled single valid class. To support multiple class and to improve readability of code, change it to mlx5_class_enabled(). With this function, each class enablement can be checked, to load class specific driver. Signed-off-by: Parav Pandit --- drivers/common/

[dpdk-dev] [RFC PATCH 5/6] bus/mlx5_pci: register a PCI driver

2020-06-10 Thread Parav Pandit
Create a mlx5 bus driver framework for invoking drivers of multiple classes who have registered with the mlx5_pci bus driver. Validate user class arguments for supported class combinations. Signed-off-by: Parav Pandit --- drivers/bus/mlx5_pci/Makefile | 1 + drivers/bus/mlx5_pci/mes

[dpdk-dev] [RFC PATCH 3/6] common/mlx5: change mlx5 class enum values as bits

2020-06-10 Thread Parav Pandit
mlx5 PCI Device supports multiple classes of devices such as net, vdpa, and/or regex. To support these multiple classes, change mlx5_class to a bitmap values so that if users asks to enable multiple of them, all supported classes can be returned by mlx5_class_supported(). Signed-off-by: Parav Pand

[dpdk-dev] [RFC PATCH 6/6] bus/mlx5_pci: enable net and vDPA to use mlx5 PCI bus driver

2020-06-10 Thread Parav Pandit
Enable class driver to match with the mlx5 pci devices. Migrate mlx5 net PMD and vdpa PMD to start using mlx5 common class driver. Signed-off-by: Parav Pandit --- drivers/bus/Makefile| 3 ++ drivers/bus/mlx5_pci/mlx5_pci_bus.c | 60 + drivers/net/mlx5

[dpdk-dev] [RFC PATCH 1/6] eal: introduce macros for getting value for bit

2020-06-10 Thread Parav Pandit
There are several drivers which duplicate bit generation macro. Introduce a generic bit macros so that such drivers avoid redefining same in multiple drivers. Signed-off-by: Parav Pandit --- lib/librte_eal/include/rte_bits.h | 10 ++ 1 file changed, 10 insertions(+) create mode 100644 l

Re: [dpdk-dev] [PATCH v20.11 2/2] eal: improve device probing API

2020-06-10 Thread Maxime Coquelin
Hi Gaëtan, On 6/10/20 2:06 PM, Gaëtan Rivet wrote: > Hello Maxime, > > On 08/06/20 17:53 +0200, Maxime Coquelin wrote: >> This patch makes rte_dev_probe() to return the >> rte_device pointer on success and NULL on error >> instead of returning 0 on success and negative >> value on error. >> >> Th

Re: [dpdk-dev] [PATCH v6 04/11] eal/mem: extract common code for memseg list initialization

2020-06-10 Thread Dmitry Kozlyuk
On Wed, 10 Jun 2020 16:48:58 +0100 "Burakov, Anatoly" wrote: > On 10-Jun-20 3:31 PM, Dmitry Kozlyuk wrote: > > On Wed, 10 Jun 2020 11:26:22 +0100 > > "Burakov, Anatoly" wrote: > > > > [snip] > > + addr = eal_get_virtual_area( > > + msl->base_va, &mem_sz, page_sz, 0

[dpdk-dev] [PATCH 34/36] net/bnxt: enable vfr flag processing with mark db opcode

2020-06-10 Thread Somnath Kotur
From: Kishore Padmanabha Removed the mark and vfr flags and replaced it with the new opcode and added the vfr flag process in mark database Signed-off-by: Kishore Padmanabha Reviewed-by: Michael Baucom Signed-off-by: Somnath Kotur --- drivers/net/bnxt/tf_ulp/ulp_mapper.c| 74

[dpdk-dev] [PATCH 36/36] net/bnxt: update ulp template database for new opcodes

2020-06-10 Thread Somnath Kotur
From: Kishore Padmanabha The ulp template database is updated to support the new combined opcodes. Signed-off-by: Kishore Padmanabha Reviewed-by: Venkat Duvvuru Reviewed-by: Ajit Kumar Khaparde Reviewed-by: Michael Baucom Signed-off-by: Somnath Kotur --- drivers/net/bnxt/tf_ulp/ulp_templat

[dpdk-dev] [PATCH 35/36] net/bnxt: rename fields in the device params structure

2020-06-10 Thread Somnath Kotur
From: Kishore Padmanabha The fields in the device params structure are renamed to reflect the usage of those fields. Signed-off-by: Kishore Padmanabha Reviewed-by: Michael Baucom Signed-off-by: Somnath Kotur --- drivers/net/bnxt/tf_ulp/bnxt_ulp.c | 12 ++-- drivers/net/bn

[dpdk-dev] [PATCH 32/36] net/bnxt: optimized key/mask/result fields to use set to zero opcode

2020-06-10 Thread Somnath Kotur
From: Mike Baucom The fields that were setting a constant zero have now been switched to use the new SET_TO_ZERO opcode as an optimization. The SET_TO_ZERO does not copy data into the key/result/mask fields, but rather simply increments the write pointer. Signed-off-by: Mike Baucom Reviewed-by

[dpdk-dev] [PATCH 33/36] net/bnxt: add support for internal exact match flows

2020-06-10 Thread Somnath Kotur
From: Kishore Padmanabha Added support of internal exact match flows and the action mark is supported for these flows. Signed-off-by: Kishore Padmanabha Reviewed-by: Michael Baucom Signed-off-by: Somnath Kotur --- drivers/net/bnxt/bnxt.h | 2 ++ drivers/net/bnxt/bnxt_rxr.c

[dpdk-dev] [PATCH 28/36] net/bnxt: remove the implicit bitset update for vnic action

2020-06-10 Thread Somnath Kotur
From: Kishore Padmanabha The implicit update of the egress vnic action bitset for a flow that does not specify the forwarding port explicitly is removed. Signed-off-by: Kishore Padmanabha Reviewed-by: Michael Baucom Signed-off-by: Somnath Kotur --- drivers/net/bnxt/tf_ulp/ulp_rte_parser.c |

[dpdk-dev] [PATCH 31/36] net/bnxt: change opcode for adding pad to setting zero for common usage

2020-06-10 Thread Somnath Kotur
From: Mike Baucom The ADD_PAD opcode is now SET_TO_ZERO. This change better reflects the intent of the opcode and allows it to be used in more circumstances without overloading the term pad. Signed-off-by: Mike Baucom Reviewed-by: Ajit Kumar Khaparde Signed-off-by: Somnath Kotur --- drivers

[dpdk-dev] [PATCH 26/36] net/bnxt: flow db api to get vf rep action record

2020-06-10 Thread Somnath Kotur
From: Kishore Padmanabha Added flow db api to get the vf representor action record for a given flow. Signed-off-by: Kishore Padmanabha Reviewed-by: Michael Baucom Signed-off-by: Somnath Kotur --- drivers/net/bnxt/tf_ulp/ulp_flow_db.c | 200 +++--- drivers/net/bnxt

[dpdk-dev] [PATCH 24/36] net/bnxt: add a devarg to set max flow count

2020-06-10 Thread Somnath Kotur
From: Shuanglin Wang User could set max flow count by passing a devarg "-w :0d:00.0,max_num_kflows=64" to a DPDK application; The value must be not less than 32K and be power-of-2; the default value is 32K. Signed-off-by: Shuanglin Wang Reviewed-by: Kishore Padmanabha Signed-off-by: Somnat

[dpdk-dev] [PATCH 27/36] net/bnxt: parse ipv6 vtc_flow field for more granularly

2020-06-10 Thread Somnath Kotur
From: Venkat Duvvuru ipv6 vtc_flow contains three fields 1. Version 2. Priority / Traffic Class 3. Flow Label Currently, these are not parsed separately and also not set separately in the field bitmap by the flow parser. However, the template treats them separately. As a result, the flow matching

[dpdk-dev] [PATCH 23/36] net/bnxt: rename the enums in the bnxt_ulp_resource_sub_type

2020-06-10 Thread Somnath Kotur
From: Kishore Padmanabha The enums in the bnxt_ulp_resource_sub_type are renamed to reflect the table types explicitly. Signed-off-by: Kishore Padmanabha Reviewed-by: Michael Baucom Signed-off-by: Somnath Kotur --- drivers/net/bnxt/tf_ulp/ulp_template_db.c | 30 --

[dpdk-dev] [PATCH 18/36] net/bnxt: use vport in the phy port act handler

2020-06-10 Thread Somnath Kotur
From: Kishore Padmanabha The phy port action handler should get vport details and not vnic id. The fix is to calculate the vport of the given port. Signed-off-by: Kishore Padmanabha Reviewed-by: Michael Baucom Signed-off-by: Somnath Kotur --- drivers/net/bnxt/tf_ulp/ulp_rte_parser.c | 10 +++

[dpdk-dev] [PATCH 22/36] net/bnxt: rename an enum in the regfile index

2020-06-10 Thread Somnath Kotur
From: Kishore Padmanabha The BNXT_ULP_REGFILE_INDEX_ACTION_PTR_MAIN is renamed to BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR since it is the main action pointer. Signed-off-by: Kishore Padmanabha Reviewed-by: Somnath Kotur Reviewed-by: Michael Baucom Signed-off-by: Somnath Kotur --- drivers/net

[dpdk-dev] [PATCH 19/36] net/bnxt: add enum to the critical resource

2020-06-10 Thread Somnath Kotur
From: Kishore Padmanabha The critical resource field in the template table is assigned enumeration values instead of hard coded values. Signed-off-by: Kishore Padmanabha Reviewed-by: Michael Baucom Signed-off-by: Somnath Kotur --- drivers/net/bnxt/tf_ulp/ulp_mapper.c | 14 +++---

[dpdk-dev] [PATCH 20/36] net/bnxt: rename regfile_wr_idx to regfile_idx

2020-06-10 Thread Somnath Kotur
From: Kishore Padmanabha The regfile index shall be used for both write and read operations. Hence the field is renamed. Signed-off-by: Kishore Padmanabha Reviewed-by: Venkat Duvvuru Reviewed-by: Michael Baucom Signed-off-by: Somnath Kotur --- drivers/net/bnxt/tf_ulp/ulp_mapper.c |

[dpdk-dev] [PATCH 21/36] net/bnxt: remove unused enum in regfile index

2020-06-10 Thread Somnath Kotur
From: Kishore Padmanabha Removed the unsed enum BNXT_ULP_REGFILE_INDEX_CACHE_ENTRY_PTR Signed-off-by: Kishore Padmanabha Reviewed-by: Michael Baucom Signed-off-by: Somnath Kotur --- drivers/net/bnxt/tf_ulp/ulp_template_db.h | 7 +++ 1 file changed, 3 insertions(+), 4 deletions(-) diff -

[dpdk-dev] [PATCH 17/36] net/bnxt: extend index table processing to process action templates

2020-06-10 Thread Somnath Kotur
From: Kishore Padmanabha The index table processing is extended to address encapsulation fields so that action template index table can be processed by a common index processing function that can process both class and action index tables. Signed-off-by: Kishore Padmanabha Reviewed-by: Michael

[dpdk-dev] [PATCH 13/36] net/bnxt: move vfr flag from computed field list to class table

2020-06-10 Thread Somnath Kotur
From: Kishore Padmanabha The vf representor flag is moved from computed field list to class table so it can be set in the template details. Signed-off-by: Kishore Padmanabha Reviewed-by: Somnath Kotur Signed-off-by: Somnath Kotur --- drivers/net/bnxt/tf_ulp/ulp_mapper.c | 14 ++-

[dpdk-dev] [PATCH 15/36] net/bnxt: direction bit needs to be added to the action bitmap

2020-06-10 Thread Somnath Kotur
From: Kishore Padmanabha This is a fix to add the direction bit to the action bitmap during flow parsing, so that egress flows can be matched to the template signature. Signed-off-by: Kishore Padmanabha Reviewed-by: Somnath Kotur Reviewed-by: Ajit Kumar Khaparde Reviewed-by: Michael Baucom S

[dpdk-dev] [PATCH 14/36] net/bnxt: add support for action bitmap opcode in result field processing

2020-06-10 Thread Somnath Kotur
From: Kishore Padmanabha This enables using the action bitmap to update the action result fields in the flow creation instead of using computed header fields. An example would be the usage of the vlan pop action bitmap that is used to updated action result field as part of this commit. Signed-of

[dpdk-dev] [PATCH 12/36] net/bnxt: remove cache tbl id from the mapper class table

2020-06-10 Thread Somnath Kotur
From: Kishore Padmanabha The cache table id is not needed anymore since the value can be calculated from resource sub type and direction. Signed-off-by: Kishore Padmanabha Reviewed-by: Michael Baucom Signed-off-by: Somnath Kotur --- drivers/net/bnxt/tf_ulp/ulp_mapper.c | 21

[dpdk-dev] [PATCH 16/36] net/bnxt: remove cache_tbl_id enums

2020-06-10 Thread Somnath Kotur
From: Kishore Padmanabha The bnxt_ulp_cache_tbl_id enums are not required any longer since the index is now calculated using resource sub type and direction. Signed-off-by: Kishore Padmanabha Reviewed-by: Michael Baucom Reviewed-by: Ccxsw Build Signed-off-by: Somnath Kotur --- drivers/net/b

[dpdk-dev] [PATCH 11/36] net/bnxt: add resource sub type to class and action tables

2020-06-10 Thread Somnath Kotur
From: Kishore Padmanabha Added support for resource sub type to class and action tables renamed table id to resource type. Signed-off-by: Kishore Padmanabha Reviewed-by: Michael Baucom Signed-off-by: Somnath Kotur --- drivers/net/bnxt/tf_ulp/ulp_mapper.c | 38 +--

[dpdk-dev] [PATCH 07/36] net/bnxt: rename the ulp action bitmap enumeration values

2020-06-10 Thread Somnath Kotur
From: Kishore Padmanabha The ulp action bitmap enumeration values that contain open flow string are renamed Signed-off-by: Kishore Padmanabha Reviewed-by: Michael Baucom Reviewed-by: Ajit Kumar Khaparde Signed-off-by: Somnath Kotur --- drivers/net/bnxt/tf_ulp/ulp_template_db.h | 12 ++--

[dpdk-dev] [PATCH 08/36] net/bnxt: add support for computed header field in result opcode

2020-06-10 Thread Somnath Kotur
From: Kishore Padmanabha Added support for computed header fields in the result field processing. The computed header fields are fields that are extracted from header fields or derived from data that is not part of the flow command but shall be used in setting up of the flow rule. Signed-off-by:

[dpdk-dev] [PATCH 09/36] net/bnxt: updated compute field list and access macros

2020-06-10 Thread Somnath Kotur
From: Kishore Padmanabha The compute field is extended to support action fields and not just header fields, hence CHF is changed to CF. The access macro for compute field is renamed to address this. Signed-off-by: Kishore Padmanabha Reviewed-by: Somnath Kotur Signed-off-by: Somnath Kotur ---

[dpdk-dev] [PATCH 10/36] net/bnxt: extend default identifier list to be global resource list

2020-06-10 Thread Somnath Kotur
From: Kishore Padmanabha The default identifier list in ulp mapper is extended to support other truflow resource types and not just identifiers. Signed-off-by: Kishore Padmanabha Reviewed-by: Somnath Kotur Signed-off-by: Somnath Kotur --- drivers/net/bnxt/tf_ulp/ulp_mapper.c | 231 +

[dpdk-dev] [PATCH 01/36] net/bnxt: Makefile changes

2020-06-10 Thread Somnath Kotur
From: Kishore Padmanabha Created sub Makefile for tf_ulp and and tf_core Signed-off-by: Kishore Padmanabha Reviewed-by: Michael Baucom Signed-off-by: Somnath Kotur --- drivers/net/bnxt/Makefile | 29 + drivers/net/bnxt/tf_core/Makefile | 17 +++

[dpdk-dev] [PATCH 05/36] net/bnxt: remove mem field from mapper class table

2020-06-10 Thread Somnath Kotur
From: Kishore Padmanabha Remove the unused mem field in the ulp mapper class table structure Signed-off-by: Kishore Padmanabha Reviewed-by: Ajit Kumar Khaparde Reviewed-by: Michael Baucom Signed-off-by: Somnath Kotur --- drivers/net/bnxt/tf_ulp/ulp_mapper.c | 2 +- drivers/net/bnxt

[dpdk-dev] [PATCH 04/36] net/bnxt: support for mark action for LFID rules

2020-06-10 Thread Somnath Kotur
From: Kishore Padmanabha The ulp mapper changes to support mark actions for non GFID entries that support only LFID rules. Signed-off-by: Kishore Padmanabha Reviewed-by: Michael Baucom Signed-off-by: Somnath Kotur --- drivers/net/bnxt/tf_ulp/ulp_mapper.c | 198 +++---

[dpdk-dev] [PATCH 02/36] net/bnxt: remove svif and vlan information from header bitmap

2020-06-10 Thread Somnath Kotur
From: Kishore Padmanabha The svif and vlan information are removed from header bitmap signature so that the matching algorithm does not use these fields to perform matching. So flows with or without vlan tag could use the same flow template. Signed-off-by: Kishore Padmanabha Reviewed-by: Kishor

[dpdk-dev] [PATCH 03/36] net/bnxt: add vfr flag to the mark manager

2020-06-10 Thread Somnath Kotur
From: Kishore Padmanabha Add support for the vfr flag to the mark manager Signed-off-by: Kishore Padmanabha Reviewed-by: Michael Baucom Signed-off-by: Somnath Kotur --- drivers/net/bnxt/bnxt_rxr.c| 3 ++- drivers/net/bnxt/tf_ulp/ulp_mark_mgr.c | 7 +++ drivers/net/bnxt/tf_ulp

[dpdk-dev] [PATCH 06/36] net/bnxt: support more resource functions in flow database

2020-06-10 Thread Somnath Kotur
From: Kishore Padmanabha Added support to include more resource functions in the flow database. The number of bits increased from 3 to 8 for storing the resource function. Signed-off-by: Kishore Padmanabha Reviewed-by: Somnath Kotur Signed-off-by: Somnath Kotur --- drivers/net/bnxt/tf_ulp/ul

[dpdk-dev] [PATCH] net/bnxt: fix max ring count calculation

2020-06-10 Thread Somnath Kotur
Max Rx Ring count could be < Max stat contexts. While accounting for stat contexts, this should be also considered and the max ring count adjusted accordingly. Fixes: f03e66cb64ce ("net/bnxt: limit queue count for NS3/Stingray devices") Cc: sta...@dpdk.org Signed-off-by: Somnath Kotur --- drive

Re: [dpdk-dev] [PATCH v6 04/11] eal/mem: extract common code for memseg list initialization

2020-06-10 Thread Burakov, Anatoly
On 10-Jun-20 3:31 PM, Dmitry Kozlyuk wrote: On Wed, 10 Jun 2020 11:26:22 +0100 "Burakov, Anatoly" wrote: [snip] + addr = eal_get_virtual_area( + msl->base_va, &mem_sz, page_sz, 0, reserve_flags); + if (addr == NULL) { +#ifndef RTE_EXEC_ENV_WINDOWS + /* T

[dpdk-dev] [PATCH 00/36] bnxt patches

2020-06-10 Thread Somnath Kotur
This patchset consists of enhancements for the host based flow table management mechanism that was introduced in 20.05. Also has some feature support for offloading vxlan encap/decap and on-chip exact match flows. Kishore Padmanabha (30): bnxt/tf_ulp: Created sub Makefile for tf_ulp and tf_core

Re: [dpdk-dev] very high VIRT memory usage

2020-06-10 Thread Burakov, Anatoly
On 10-Jun-20 4:28 PM, Stephen Hemminger wrote: On Wed, 10 Jun 2020 10:24:44 +0100 "Burakov, Anatoly" wrote: On 09-Jun-20 4:35 PM, Stephen Hemminger wrote: On Tue, 9 Jun 2020 14:39:54 +0100 "Burakov, Anatoly" wrote: On 09-Jun-20 2:13 PM, Ferruh Yigit wrote: On 6/9/2020 1:46 PM, Burakov,

Re: [dpdk-dev] [PATCH 0/7] Register external threads as lcore

2020-06-10 Thread Jerin Jacob
On Wed, Jun 10, 2020 at 8:48 PM David Marchand wrote: > > On Wed, Jun 10, 2020 at 5:09 PM Jerin Jacob wrote: > > > > On Wed, Jun 10, 2020 at 8:15 PM David Marchand > > wrote: > > > > > > OVS and some other applications have been hacking into DPDK internals to > > > fake EAL threads and avoid per

Re: [dpdk-dev] very high VIRT memory usage

2020-06-10 Thread Stephen Hemminger
On Wed, 10 Jun 2020 10:24:44 +0100 "Burakov, Anatoly" wrote: > On 09-Jun-20 4:35 PM, Stephen Hemminger wrote: > > On Tue, 9 Jun 2020 14:39:54 +0100 > > "Burakov, Anatoly" wrote: > > > >> On 09-Jun-20 2:13 PM, Ferruh Yigit wrote: > >>> On 6/9/2020 1:46 PM, Burakov, Anatoly wrote: > On

[dpdk-dev] [PATCH] mbuf: fix out-of-bounds access

2020-06-10 Thread Xiaolong Ye
We should make sure off + size < sizeof(struct rte_mbuf) to avoid possible out-of-bounds access of free_space array, there is no issue currently due to the low bits of free_flags (which is adjacent to free_space) are always set to 0. But we shouldn't rely on it since it's fragile and layout of stru

Re: [dpdk-dev] [PATCH 0/7] Register external threads as lcore

2020-06-10 Thread David Marchand
On Wed, Jun 10, 2020 at 5:09 PM Jerin Jacob wrote: > > On Wed, Jun 10, 2020 at 8:15 PM David Marchand > wrote: > > > > OVS and some other applications have been hacking into DPDK internals to > > fake EAL threads and avoid performance penalty of only having non-EAL > > threads. > > > > This serie

Re: [dpdk-dev] [RFC] mbuf: accurate packet Tx scheduling

2020-06-10 Thread Slava Ovsiienko
Hi, Harman > -Original Message- > From: Harman Kalra > Sent: Wednesday, June 10, 2020 16:34 > To: Slava Ovsiienko > Cc: dev@dpdk.org; Thomas Monjalon ; Matan > Azrad ; Raslan Darawsheh > ; Ori Kam ; > olivier.m...@6wind.com; Shahaf Shuler > Subject: Re: [dpdk-dev] [RFC] mbuf: accurate p

Re: [dpdk-dev] [PATCH 0/7] Register external threads as lcore

2020-06-10 Thread Bruce Richardson
On Wed, Jun 10, 2020 at 08:39:30PM +0530, Jerin Jacob wrote: > On Wed, Jun 10, 2020 at 8:15 PM David Marchand > wrote: > > > > OVS and some other applications have been hacking into DPDK internals to > > fake EAL threads and avoid performance penalty of only having non-EAL > > threads. > > > > Thi

Re: [dpdk-dev] [PATCH 0/7] Register external threads as lcore

2020-06-10 Thread Jerin Jacob
On Wed, Jun 10, 2020 at 8:15 PM David Marchand wrote: > > OVS and some other applications have been hacking into DPDK internals to > fake EAL threads and avoid performance penalty of only having non-EAL > threads. > > This series proposes to add a new type of lcores and maps those external > threa

[dpdk-dev] [PATCH 6/7] eal: dump lcores

2020-06-10 Thread David Marchand
Add a little helper to dump all lcores. Signed-off-by: David Marchand --- lib/librte_eal/common/eal_common_lcore.c | 32 +++ lib/librte_eal/common/eal_common_thread.c | 16 lib/librte_eal/common/eal_thread.h| 13 +++-- lib/librte_eal/freebsd/eal.c

[dpdk-dev] [PATCH 5/7] eal: register non-EAL threads as lcore

2020-06-10 Thread David Marchand
DPDK allows calling some part of its API from a non-EAL thread but this has some limitations. OVS (and other applications) has its own thread management but still want to avoid such limitations by hacking RTE_PER_LCORE(_lcore_id) and faking EAL threads potentially unknown of some DPDK component. I

[dpdk-dev] [PATCH 7/7] eal: add lcore hotplug notifications

2020-06-10 Thread David Marchand
Now that lcores can be dynamically allocated/freed, we will have to notify DPDK components and applications of such events for cases where per lcore context must be allocated/initialised. Signed-off-by: David Marchand --- lib/librte_eal/common/eal_common_lcore.c | 91 +++ li

[dpdk-dev] [PATCH 1/7] eal: relocate per thread symbols to common

2020-06-10 Thread David Marchand
We have per lcore thread symbols scattered in OS implementations but common code relies on them. Move all of them in common. RTE_PER_LCORE(_socket_id) and RTE_PER_LCORE(_cpuset) have public accessors and are not exported through the library map, they can be made static. Signed-off-by: David March

[dpdk-dev] [PATCH 3/7] eal: introduce thread init helper

2020-06-10 Thread David Marchand
Introduce a helper responsible for initialising the per thread context. We can then have a unified context for EAL and non-EAL threads and remove copy/paste'd OS-specific helpers. Per EAL thread CPU affinity setting is separated from the thread init. It is to accommodate with Windows EAL where CPU

[dpdk-dev] [PATCH 4/7] eal: introduce thread uninit helper

2020-06-10 Thread David Marchand
This is a preparation step for dynamically unregistering external threads. Since we explicitly allocate a per thread trace buffer in rte_thread_init, add an internal helper to free this buffer. Note: I preferred renaming the current internal function to free all threads trace buffers (new name tr

[dpdk-dev] [PATCH 2/7] eal: fix multiple definition of per lcore thread id

2020-06-10 Thread David Marchand
Because of the inline accessor + static declaration in rte_gettid(), we end up with multiple symbols for RTE_PER_LCORE(_thread_id). Each compilation unit will pay a cost when accessing this information for the first time. $ nm build/app/dpdk-testpmd | grep per_lcore__thread_id 0054 d p

[dpdk-dev] [PATCH 0/7] Register external threads as lcore

2020-06-10 Thread David Marchand
OVS and some other applications have been hacking into DPDK internals to fake EAL threads and avoid performance penalty of only having non-EAL threads. This series proposes to add a new type of lcores and maps those external threads to such lcores. Those threads won't run the DPDK eal mainloop and

Re: [dpdk-dev] [dpdk-stable] [PATCH] eal: remove redundant newline

2020-06-10 Thread Ferruh Yigit
On 6/10/2020 3:30 PM, David Marchand wrote: > rte_eal_init_alert() already appends a newline. > > Fixes: 0a529578f162 ("eal: clean up unused files on initialization") > Cc: sta...@dpdk.org > > Signed-off-by: David Marchand Reviewed-by: Ferruh Yigit

[dpdk-dev] [PATCH] eal: fix Windows export

2020-06-10 Thread David Marchand
rte_eal_get_configuration() has been made private in 19.11, remove leftover in Windows export list. Fixes: f58cef079b05 ("eal: make the global configuration private") Signed-off-by: David Marchand --- lib/librte_eal/rte_eal_exports.def | 1 - 1 file changed, 1 deletion(-) diff --git a/lib/libr

Re: [dpdk-dev] [PATCH v6 04/11] eal/mem: extract common code for memseg list initialization

2020-06-10 Thread Dmitry Kozlyuk
On Wed, 10 Jun 2020 11:26:22 +0100 "Burakov, Anatoly" wrote: [snip] > >>> + addr = eal_get_virtual_area( > >>> + msl->base_va, &mem_sz, page_sz, 0, reserve_flags); > >>> + if (addr == NULL) { > >>> +#ifndef RTE_EXEC_ENV_WINDOWS > >>> + /* The hint would be misleading on Windows, b

[dpdk-dev] [PATCH] eal: remove redundant newline

2020-06-10 Thread David Marchand
rte_eal_init_alert() already appends a newline. Fixes: 0a529578f162 ("eal: clean up unused files on initialization") Cc: sta...@dpdk.org Signed-off-by: David Marchand --- lib/librte_eal/freebsd/eal.c | 2 +- lib/librte_eal/linux/eal.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-)

[dpdk-dev] [PATCH v8 10/11] eal/windows: initialize hugepage info

2020-06-10 Thread Dmitry Kozlyuk
Add hugepages discovery ("large pages" in Windows terminology) and update documentation for required privilege setup. Only 2MB hugepages are supported and their number is estimated roughly due to the lack or unstable status of suitable OS APIs. Assign myself as maintainer for the implementation fil

[dpdk-dev] [PATCH v8 11/11] eal/windows: implement basic memory management

2020-06-10 Thread Dmitry Kozlyuk
Basic memory management supports core libraries and PMDs operating in IOVA as PA mode. It uses a kernel-mode driver, virt2phys, to obtain IOVAs of hugepages allocated from user-mode. Multi-process mode is not implemented and is forcefully disabled at startup. Assign myself as a maintainer for Windo

[dpdk-dev] [PATCH v8 09/11] eal/windows: improve CPU and NUMA node detection

2020-06-10 Thread Dmitry Kozlyuk
1. Map CPU cores to their respective NUMA nodes as reported by system. 2. Support systems with more than 64 cores (multiple processor groups). 3. Fix magic constants, styling issues, and compiler warnings. 4. Add EAL private function to map DPDK socket ID to NUMA node number. Fixes: 53ffd9f080fc (

[dpdk-dev] [PATCH v8 07/11] eal/windows: add tracing support stubs

2020-06-10 Thread Dmitry Kozlyuk
EAL common code depends on tracepoint calls, but generic implementation cannot be enabled on Windows due to missing standard library facilities. Add stub functions to support tracepoint compilation, so that common code does not have to conditionally include tracepoints until proper support is added

  1   2   3   >