[dpdk-dev] [PATCH v5 0/4] fix issue with partial DMA unmap

2020-12-14 Thread Nithin Dabilpuram
Partial DMA unmap is not supported by VFIO type1 IOMMU in Linux. Though the return value is zero, the returned DMA unmap size is not same as expected size. So add test case and fix to both heap triggered DMA mapping and user triggered DMA mapping/unmapping. Refer vfio_dma_do_unmap() in drivers/vfi

[dpdk-dev] [PATCH v5 1/4] vfio: revert changes for map contiguous areas in one go

2020-12-14 Thread Nithin Dabilpuram
In order to save DMA entries limited by kernel both for externel memory and hugepage memory, an attempt was made to map physically contiguous memory in one go. This cannot be done as VFIO IOMMU type1 does not support partially unmapping a previously mapped memory region while Heap can request for m

[dpdk-dev] [PATCH v5 3/4] test: add test case to validate VFIO DMA map/unmap

2020-12-14 Thread Nithin Dabilpuram
Test case alloc's system pages and tries to performs a user DMA map and unmap both partially and fully. Signed-off-by: Nithin Dabilpuram Acked-by: Anatoly Burakov --- app/test/meson.build | 1 + app/test/test_vfio.c | 106 +++ 2 files changed, 1

[dpdk-dev] [PATCH v5 4/4] test: change external memory test to use system page sz

2020-12-14 Thread Nithin Dabilpuram
Currently external memory test uses 4K page size. VFIO DMA mapping works only with system page granularity. Earlier it was working because all the contiguous mappings were coalesced and mapped in one-go which ended up becoming a lot bigger page. Now that VFIO DMA mappings both in IOVA as VA and IO

[dpdk-dev] [PATCH v5 2/4] vfio: fix DMA mapping granularity for type1 IOVA as VA

2020-12-14 Thread Nithin Dabilpuram
Partial unmapping is not supported for VFIO IOMMU type1 by kernel. Though kernel gives return as zero, the unmapped size returned will not be same as expected. So check for returned unmap size and return error. For IOVA as PA, DMA mapping is already at memseg size granularity. Do the same even for

Re: [dpdk-dev] [PATCH v4 3/4] test: add test case to validate VFIO DMA map/unmap

2020-12-14 Thread Nithin Dabilpuram
Hi David, As mentioned below in #1, I sent v5 with memory allocated from Heap which I think falls in initially configured DMA window 0x0 0x40 atleast in Linux as DPDK memory starts after HEAP. Let me know if it is ok for POWER9 system. On Thu, Dec 03, 2020 at 12:44:06PM +0530, Nit

Re: [dpdk-dev] [EXT] Re: [PATCH v1 1/2] meson: update meson build for armada drivers

2020-12-14 Thread Ferruh Yigit
On 12/13/2020 8:06 PM, Liron Himi wrote: -Original Message- From: Ferruh Yigit Sent: Wednesday, 9 December 2020 12:50 To: Liron Himi ; bruce.richard...@intel.com Cc: dev@dpdk.org; Akhil Goyal Subject: [EXT] Re: [dpdk-dev] [PATCH v1 1/2] meson: update meson build for armada drivers Ex

[dpdk-dev] [PATCH 1/2] test/bitmap: add test case to scan after half cline is cleared

2020-12-14 Thread Nithin Dabilpuram
Add a test case to test scan operation post clear of half cacheline of slabs. Also fix meson.build to include test_bitmap.c in the compilation. Signed-off-by: Nithin Dabilpuram --- app/test/meson.build | 1 + app/test/test_bitmap.c | 34 +- 2 files changed, 34

[dpdk-dev] [PATCH 2/2] bitmap: fix bitmap not empty API for 128B cacheline

2020-12-14 Thread Nithin Dabilpuram
Currently bitmap line not empty check API assumes cache line of 64B and only checks 8 slabs. Since in 128B cacheline, we have 16 slabs per cacheline, plt_bitmap_clear() will mark complete line as empty as soon as 8 slabs are full thereby breaking bitmap scan functionality. Fix it by defining new __

Re: [dpdk-dev] [PATCH v2 1/2] ci: hook to GitHub Actions

2020-12-14 Thread Thomas Monjalon
11/12/2020 21:07, Ferruh Yigit: > On 12/4/2020 5:36 PM, David Marchand wrote: > > With the recent changes in terms of free access to the Travis CI, let's > > offer an alternative with GitHub Actions. > > Running jobs on ARM is not supported unless using external runners, so > > this commit only add

Re: [dpdk-dev] [PATCH v2] net/virtio-user: fix run close(0) and close callfd

2020-12-14 Thread Xia, Chenbo
Hi Jiawei, > -Original Message- > From: dev On Behalf Of Jiawei Zhu > Sent: Saturday, December 12, 2020 12:53 AM > To: dev@dpdk.org > Subject: [dpdk-dev] [PATCH v2] net/virtio-user: fix run close(0) and close > callfd > > From: Jiawei Zhu > > When i < VIRTIO_MAX_VIRTQUEUES and j == i,

Re: [dpdk-dev] [PATCH v2 1/2] ci: hook to GitHub Actions

2020-12-14 Thread Aaron Conole
David Marchand writes: > With the recent changes in terms of free access to the Travis CI, let's > offer an alternative with GitHub Actions. > Running jobs on ARM is not supported unless using external runners, so > this commit only adds builds for x86_64 and cross compiling for i386 and > aarch6

Re: [dpdk-dev] [PATCH v2 2/2] ci: enable v21 ABI checks

2020-12-14 Thread Aaron Conole
David Marchand writes: > v21 ABI will be maintained until v21.11. > > Let's use the latest released libabigail 1.8. > > In GitHub Actions, libabigail binaries and the ABI reference are stored > in two shared caches as all branches can use the same. > > While at it, we can reproduce changes from t

[dpdk-dev] [RFC] net/mlx5: enlarge maximum flow priority

2020-12-14 Thread Dong Zhou
Currently, the maximum flow priority to user is 4, PMD will manage 3 sub-priorities per user priority according to L2, L3 and L4. This count of priority is not enough if user want to do some flow match by priorities, such as LPM, for one IPV4 address, we need 32 priorities for each bit of 32 mask l

[dpdk-dev] [PATCH] update Intel roadmap for 21.02

2020-12-14 Thread Ferruh Yigit
Signed-off-by: Ferruh Yigit --- content/roadmap/_index.md | 8 1 file changed, 8 insertions(+) diff --git a/content/roadmap/_index.md b/content/roadmap/_index.md index 456690266cfc..1eec863566c2 100644 --- a/content/roadmap/_index.md +++ b/content/roadmap/_index.md @@ -13,13 +13,19 @@ T

Re: [dpdk-dev] [PATCH v5 0/3] support both PIO and MMIO BAR for virtio PMD

2020-12-14 Thread 谢华伟(此时此刻)
Hi Maxime and David: Could we start to review this patch? /Thanks, huawei On 2020/11/10 20:42, David Marchand wrote: On Tue, Nov 10, 2020 at 1:35 PM 谢华伟(此时此刻) wrote: Previously there are different ways to get port address based on different DPDK uio driver(IGB_UIO/UIO_PCI_GENERIC/VFIO), whi

Re: [dpdk-dev] [PATCH v5] ip_frag: remove padding length of fragment

2020-12-14 Thread Ananyev, Konstantin
Hi Yicai, > In some situations, we would get several ip fragments, which total > data length is less than min_ip_len(64) and padding with zeros. > We simulated intermediate fragments by modifying the MTU. > To illustrate the problem, we simplify the packet format and > ignore the impact of the

Re: [dpdk-dev] [PATCH v2 1/2] ci: hook to GitHub Actions

2020-12-14 Thread David Marchand
On Fri, Dec 4, 2020 at 6:37 PM David Marchand wrote: > > With the recent changes in terms of free access to the Travis CI, let's > offer an alternative with GitHub Actions. > Running jobs on ARM is not supported unless using external runners, so > this commit only adds builds for x86_64 and cross

Re: [dpdk-dev] [PATCH v1 00/12] fix rx packets dropped issue

2020-12-14 Thread Ferruh Yigit
On 12/9/2020 3:16 AM, Steve Yang wrote: The jumbo frame used the 'RTE_ETHER_MAX_LEN' as boundary condition, this fix will change the boundary condition with 'RTE_ETHER_MTU'. When the MTU(1500) set, the frame type of rx packet will be different if used different overhead, it will cause the consis

[dpdk-dev] [PATCH] examples/l3fwd: fix max Tx queue count

2020-12-14 Thread Harman Kalra
In l3fwd no of transmit queues is calculated based on no of lcores with which it is launched. Hence maximum no of tx queues possible per port should depend on RTE_MAX_LCORE value. Fixes: 26b5b020 ("examples/l3fwd: modularize") Cc: sta...@dpdk.org Signed-off-by: Harman Kalra --- examples/l3f

Re: [dpdk-dev] [PATCH] pci/windows: do not fail on missing NUMA node for PCIe

2020-12-14 Thread Ranjit Menon
On 12/13/2020 6:16 AM, Tal Shnaiderman wrote: On older processors, NUMA isn't bound to PCIe locality. those cases return ERROR_NOT_FOUND in response to the SetupDiGetDevicePropertyW call with DEVPKEY_Device_Numa_Node attribute. This error fails the probe process for the PCIe device. this commit

Re: [dpdk-dev] question regarding rx checksum offload flags

2020-12-14 Thread Lance Richardson
On Thu, Sep 17, 2020 at 10:05 AM Olivier Matz wrote: > > Hi Lance, > > On Mon, Aug 24, 2020 at 04:11:45PM -0400, Lance Richardson wrote: > > I was looking for some clarification regarding how rx checksum > > flags should be set for tunnel packets having both inner and outer > > IP/L4 headers. > >

[dpdk-dev] [PATCH] net/bnxt: fix doorbell write ordering

2020-12-14 Thread Lance Richardson
Write completion queue doorbell before receive descriptor doorbell to avoid possiblity of completion queue overflow when completion queue size is equal to receive descriptor ring size. Remove unnecessary compiler barriers (db write functions have the necessary barriers.) Fixes: 637e34befd9c ("net/

[dpdk-dev] [PATCH] net/bnxt: limit per-poll Rx representor pkts

2020-12-14 Thread Lance Richardson
Limit number of representor packets transferred per poll to requested burst size. Fixes: 6dc83230b43b ("net/bnxt: support port representor data path") Signed-off-by: Lance Richardson Reviewed-by: Ajit Kumar Khaparde Reviewed-by: Somnath Kotur Cc: sta...@dpdk.org --- drivers/net/bnxt/bnxt_rxr.c

[dpdk-dev] [PATCH v2] net/bnxt: fix doorbell write ordering

2020-12-14 Thread Lance Richardson
Write completion queue doorbell before receive descriptor doorbell to avoid possibility of completion queue overflow when completion queue size is equal to receive descriptor ring size. Remove unnecessary compiler barriers (db write functions have the necessary barriers.) Fixes: 637e34befd9c ("net

Re: [dpdk-dev] [PATCH] eal: don't log uninitialized string

2020-12-14 Thread Mcnamara, John
> -Original Message- > From: dev On Behalf Of Andrew Boyer > Sent: Friday, December 11, 2020 5:06 PM > To: dev@dpdk.org > Cc: Andrew Boyer ; Burakov, Anatoly > ; sta...@dpdk.org > Subject: [dpdk-dev] [PATCH] eal: don't log uninitialized string > > Our Coverity scan pointed out that path[]

[dpdk-dev] [PATCH v2] eal/windows: add interrupt functions stub

2020-12-14 Thread Pallavi Kadam
Add some missing interrupt implementations on Windows. Also add respective functions to export file. Signed-off-by: Tal Shnaiderman Signed-off-by: Pallavi Kadam Reviewed-by: Ranjit Menon Acked-by: Narcisa Vasile v2 changes: Add remaining interrupt APIs (Dmitry Kozlyuk) --- lib/librte

Re: [dpdk-dev] [PATCH] eal/windows: add interrupt functions stub

2020-12-14 Thread Kadam, Pallavi
Hi Dmitry, On 12/11/2020 1:07 PM, Dmitry Kozlyuk wrote: On Thu, 10 Dec 2020 16:26:07 -0800, Pallavi Kadam wrote: Add some missing interrupt implementations on Windows. Also add respestive functions to export file. Signed-off-by: Tal Shnaiderman Signed-off-by: Pallavi Kadam Reviewed-by: Ranji

Re: [dpdk-dev] [PATCH v2] net/i40e: issue with ADD VLAN from Guest

2020-12-14 Thread Guo, Jia
From: Souvik Dey Sent: Saturday, December 12, 2020 9:05 PM To: Xing, Beilei ; Guo, Jia ; Zhang, Qi Z Cc: dev@dpdk.org; Souvik Dey Subject: [PATCH v2] net/i40e: issue with ADD VLAN from Guest Reset the configuration of vlan strip that would be change by the pf kernel driver when adding vlan fr

[dpdk-dev] [PATCH 0/3] AVX512 vPMD on i40e

2020-12-14 Thread Leyi Rong
This patchset aims to support AVX512 vPMD on i40e. And the changes are only target to AVX512 vector path. Leyi Rong (3): net/i40e: remove devarg use-latest-supported-vec net/i40e: add AVX512 vector path net/i40e: optimize Tx by using AVX512 doc/guides/nics/i40e.rst|9 -

[dpdk-dev] [PATCH 1/3] net/i40e: remove devarg use-latest-supported-vec

2020-12-14 Thread Leyi Rong
As eal parameter --force-max-simd-bitwidth is already introduced, to make it more clear when setting rx/tx function, remove devarg use-latest-supported-vec support. Signed-off-by: Leyi Rong --- doc/guides/nics/i40e.rst | 9 --- drivers/net/i40e/i40e_ethdev.c | 63 +-- dr

[dpdk-dev] [PATCH 2/3] net/i40e: add AVX512 vector path

2020-12-14 Thread Leyi Rong
Add AVX512 support for i40e PMD. This patch adds i40e_rxtx_vec_avx512.c to support i40e AVX512 vPMD. This patch aims to enable AVX512 on i40e vPMD. Main changes are focus on Rx path compared with AVX2 vPMD. Signed-off-by: Leyi Rong Signed-off-by: Bruce Richardson --- drivers/net/i40e/i40e_rxtx

[dpdk-dev] [PATCH 3/3] net/i40e: optimize Tx by using AVX512

2020-12-14 Thread Leyi Rong
Optimize Tx path by using AVX512 instructions and vectorize the tx free bufs process. Signed-off-by: Leyi Rong Signed-off-by: Bruce Richardson --- drivers/net/i40e/i40e_rxtx.c| 19 +++ drivers/net/i40e/i40e_rxtx.h| 4 + drivers/net/i40e/i40e_rxtx_vec_avx512.c | 146 ++

Re: [dpdk-dev] [PATCH] net/ixgbe: fix fdirctrl register setting

2020-12-14 Thread Zhou, JunX W
Tested-by: Zhou, Jun -Original Message- From: dev [mailto:dev-boun...@dpdk.org] On Behalf Of dapengx...@intel.com Sent: Friday, December 11, 2020 9:35 AM To: Guo, Jia Cc: dev@dpdk.org; Yu, DapengX ; Zhang, Qi Z Subject: [dpdk-dev] [PATCH] net/ixgbe: fix fdirctrl register setting From:

Re: [dpdk-dev] [PATCH v5] ip_frag: remove padding length of fragment

2020-12-14 Thread luyicai
> -Original Message- > From: Ananyev, Konstantin [mailto:konstantin.anan...@intel.com] > Sent: Monday, December 14, 2020 10:45 PM > To: luyicai ; dev@dpdk.org > Cc: Zhoujingbin (Robin, Russell Lab) ; chenchanghu > ; Lilijun (Jerry) ; > Linhaifeng ; Guohongzhi (Russell Lab) > ; wangyun

[dpdk-dev] [PATCH] net/mlx5: fix shared RSS and mark actions combination

2020-12-14 Thread Suanming Mou
In order to allow mbuf mark ID update in Rx data-path, there is a mechanism in the PMD to enable it according to the rte_flows. When a flow with mark ID and RSS/QUEUE action exists, all the relevant Rx queues will be enabled to report the mark ID. When shared RSS action is combined with mark actio

Re: [dpdk-dev] [PATCH] net/ixgbe: fix fdirctrl register setting

2020-12-14 Thread Guo, Jia
Hi, dapeng > -Original Message- > From: dapengx...@intel.com > Sent: Friday, December 11, 2020 9:35 AM > To: Guo, Jia > Cc: dev@dpdk.org; Yu, DapengX ; Zhang, Qi Z > > Subject: [PATCH] net/ixgbe: fix fdirctrl register setting > > From: YU DAPENG > > The function ixgbe_fdir_set_flexby

Re: [dpdk-dev] [PATCH v2 5/5] net/iavf: support new VLAN virtchnl opcodes

2020-12-14 Thread Yang, Qiming
> -Original Message- > From: Wang, Haiyue > Sent: Monday, December 14, 2020 15:12 > To: dev@dpdk.org > Cc: Yang, Qiming ; Wu, Jingjing > ; Zhang, Qi Z ; Wang, Haiyue > ; Xing, Beilei > Subject: [PATCH v2 5/5] net/iavf: support new VLAN virtchnl opcodes > > The new VLAN virtchnl opcode

Re: [dpdk-dev] [PATCH v2 0/5] Add AVF & DCF VLAN feaure

2020-12-14 Thread Yang, Qiming
Hi, Haiyue Will this patch set cover DCF QinQ enable in the future? Qiming > -Original Message- > From: Wang, Haiyue > Sent: Monday, December 14, 2020 15:12 > To: dev@dpdk.org > Cc: Yang, Qiming ; Wu, Jingjing > ; Zhang, Qi Z ; Wang, Haiyue > > Subject: [PATCH v2 0/5] Add AVF & DCF VLAN

Re: [dpdk-dev] [PATCH v2 0/5] Add AVF & DCF VLAN feaure

2020-12-14 Thread Wang, Haiyue
> -Original Message- > From: Yang, Qiming > Sent: Tuesday, December 15, 2020 13:22 > To: Wang, Haiyue ; dev@dpdk.org > Cc: Wu, Jingjing ; Zhang, Qi Z > Subject: RE: [PATCH v2 0/5] Add AVF & DCF VLAN feaure > > Hi, Haiyue > Will this patch set cover DCF QinQ enable in the future? Yes. >

Re: [dpdk-dev] [PATCH v2 5/5] net/iavf: support new VLAN virtchnl opcodes

2020-12-14 Thread Wang, Haiyue
> -Original Message- > From: Yang, Qiming > Sent: Tuesday, December 15, 2020 13:20 > To: Wang, Haiyue ; dev@dpdk.org > Cc: Wu, Jingjing ; Zhang, Qi Z ; > Xing, Beilei > > Subject: RE: [PATCH v2 5/5] net/iavf: support new VLAN virtchnl opcodes > > > > > -Original Message- > > F

[dpdk-dev] [PATCH 00/27] ice base code update

2020-12-14 Thread Qi Zhang
Change Summary: 1. Support double vlan mode. 2. Support eCPRI msg type 0 filter on fdir. 3. Support ecPRI udp tunnel create/destroy. 4. Support vxlan vni filter on fdir. 5. Support GTP filter on switch. 6. Couple bugs fixes and code clean. Qi Zhang (27): net/ice/base: modify ptype map for UDP

[dpdk-dev] [PATCH 01/27] net/ice/base: modify ptype map for UDP

2020-12-14 Thread Qi Zhang
Add below ptypes into ice_ptypes_udp_il. MAC_IPV4_GTPC_TEID MAC_IPV6_GTPC_TEID MAC_IPV4_GTPC MAC_IPV6_GTPC MAC_IPV4_GTPU MAC_IPV6_GTPU So outer UDP can also be selected as input set for GTPC and GTPU non IP packet. Signed-off-by: Qi Zhang --- drivers/net/ice/base/ice_flow.c | 2 +- 1 file chan

[dpdk-dev] [PATCH 02/27] net/ice/base: increased control queue timeout

2020-12-14 Thread Qi Zhang
250 msec timeout is insufficient for some AQ commands. Advice from FW team was to increase the timeout. Increased to 1 second. Signed-off-by: Fabio Pricoco Signed-off-by: Qi Zhang --- drivers/net/ice/base/ice_controlq.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dri

[dpdk-dev] [PATCH 03/27] net/ice/base: read more security revision options

2020-12-14 Thread Qi Zhang
Added read of security revision disabled and updated disabled. Signed-off-by: Fabio Pricoco Signed-off-by: Qi Zhang --- drivers/net/ice/base/ice_common.c | 17 + drivers/net/ice/base/ice_type.h | 4 2 files changed, 21 insertions(+) diff --git a/drivers/net/ice/base/ice

[dpdk-dev] [PATCH 04/27] net/ice/base: refactor interface for flash read

2020-12-14 Thread Qi Zhang
The ice_read_flash_module interface for reading from the various NVM modules was introduced. It's purpose is two-fold. First, it enables reading data from the CSS header, used to allow accessing the image security revisions. Second, it allowed reading from either the 1st or the 2nd NVM bank. This

[dpdk-dev] [PATCH 05/27] net/ice/base: allow reading inactive flash security revision

2020-12-14 Thread Qi Zhang
Modify ice_get_nvm_srev and ice_get_orom_srev to take the ice_flash_bank enumeration that specifies whether to read from the active or the inactive flash module. Rename and refactor the ice_read_active_nvm_module and ice_read_active_orom_module functions to take the bank enum value as well. With t

[dpdk-dev] [PATCH 06/27] net/ice/base: allow reading arbitrary size data with flash read

2020-12-14 Thread Qi Zhang
Refactor ice_read_flash_module so that it takes a size and a length value, rather than always reading in 2-byte increments. The ice_read_nvm_module and ice_read_orom_module wrapper functions will still read a u16 with the byte-swapping enabled. This will be used in a future change to implement rea

[dpdk-dev] [PATCH 07/27] net/ice/base: read Option ROM combo version from CIVD section

2020-12-14 Thread Qi Zhang
The driver currently reads the combo image version data from within the Boot Configuration TLV block of the PFA area of the NVM. This allows access to the active Option ROM version data, assuming that it has been properly copied into this section. There is no equivalent method for reading the Opti

[dpdk-dev] [PATCH 08/27] net/ice/base: implement inactive NVM version get

2020-12-14 Thread Qi Zhang
Similar to ice_get_inactive_orom_ver, add a function to read the NVM version data from the inactive section of flash. The primary motivation of this function is to allow the driver to report the version of a pending update that has not yet been activated. To do this, refactor ice_get_nvm_ver_info

[dpdk-dev] [PATCH 09/27] net/ice/base: support GTP filtering via advanced switch filter

2020-12-14 Thread Qi Zhang
Add support to enable GTP filtering using advanced switch filter mechanism. Example of GTP filter criteria: Outer UDP + GTP (Optional) + Inner IPv4[6] + Inner TCP/UDP Signed-off-by: Kiran Patil Signed-off-by: Qi Zhang --- drivers/net/ice/base/ice_flex_type.h | 1 + drivers/net/ice/base/ice_

[dpdk-dev] [PATCH 10/27] net/ice/base: cleanup some macros

2020-12-14 Thread Qi Zhang
Replaced the netlist related macro and removed some unused macro Signed-off-by: Qi Zhang --- drivers/net/ice/base/ice_adminq_cmd.h | 26 drivers/net/ice/base/ice_type.h | 43 ++- 2 files changed, 35 insertions(+), 34 deletions(-) diff --git a/drive

[dpdk-dev] [PATCH 11/27] net/ice/base: add definitions for FW health status codes

2020-12-14 Thread Qi Zhang
Add definitions for the various health status codes that can be reported by firmware. Signed-off-by: Nick Nunley Signed-off-by: Qi Zhang --- drivers/net/ice/base/ice_adminq_cmd.h | 29 +++ 1 file changed, 29 insertions(+) diff --git a/drivers/net/ice/base/ice_adminq_cmd

[dpdk-dev] [PATCH 12/27] net/ice/base: add function for NVM checksum verification

2020-12-14 Thread Qi Zhang
AQ 0x0706 lets user to verify and recalculate NVM checksum. The usage depends on command flags. Signed-off-by: Milena Olech Signed-off-by: Qi Zhang --- drivers/net/ice/base/ice_nvm.c | 28 drivers/net/ice/base/ice_nvm.h | 1 + 2 files changed, 29 insertions(+) dif

[dpdk-dev] [PATCH 13/27] net/ice/base: add condition to copy module info into memory

2020-12-14 Thread Qi Zhang
There is added condition,to copy information about used module into memory Signed-off-by: Szymon T Cudzilo Signed-off-by: Qi Zhang --- drivers/net/ice/base/ice_common.c | 5 + 1 file changed, 5 insertions(+) diff --git a/drivers/net/ice/base/ice_common.c b/drivers/net/ice/base/ice_common.

[dpdk-dev] [PATCH 14/27] net/ice/base: add interface to support configuring VLAN mode

2020-12-14 Thread Qi Zhang
The VLAN mode of the device has to be configured while the global configuration lock is held while downloading the DDP, specifically after the DDP has been downloaded. In order to support this a VLAN mode interface was added. By default the device will stay in single VLAN mode (SVM), which is the c

[dpdk-dev] [PATCH 15/27] net/ice/base: support VXLAN VNI field in FDIR

2020-12-14 Thread Qi Zhang
Enable VXLAN VNI field in FDIR. Signed-off-by: Zhirun Yan Signed-off-by: Qi Zhang --- drivers/net/ice/base/ice_fdir.c | 43 + drivers/net/ice/base/ice_fdir.h | 8 ++ drivers/net/ice/base/ice_flow.c | 21 drivers/net/ice/base/ice_flow.h | 6

[dpdk-dev] [PATCH 16/27] net/ice/base: fix incorrect tunnel destroy

2020-12-14 Thread Qi Zhang
The tcam information in AQ command buffer is not correct when destroy tunnel entries. The tcam count was always ONE even destroy multiple entries, and the offset of tcam memory was also incorrect. This patch is to fix this issue. Fixes: 884efe3ca1f3 ("net/ice/base: add VXLAN/generic tunnel managem

[dpdk-dev] [PATCH 17/27] net/ice/base: add functionality to check if DVM is supported

2020-12-14 Thread Qi Zhang
If a driver wants to configure double VLAN mode (DVM) it needs to first check if the DDP supports DVM. To do this the driver needs to read the package metadata section via the upload section AQ (0x04C1). If the DDP doesn't support configuring double VLAN mode (DVM), then there is nothing to do reg

[dpdk-dev] [PATCH 18/27] net/ice/base: resend some AQ commands when EBUSY

2020-12-14 Thread Qi Zhang
Retry sending some AQ commands, as result of EBUSY AQ error. This change follows the latest guidelines from HW. It is better to retry the same AQ command several times, as the result of EBUSY, instead of returning error to the caller right away. Signed-off-by: Chinh T Cao Signed-off-by: Qi Zhang

[dpdk-dev] [PATCH 19/27] net/ice/base: change get PHY capability error level

2020-12-14 Thread Qi Zhang
As the user may be expected to take action on this issue, change the message to a warning so that the message is more easily accessible than a debug. Also, add the error code to further aide in identifying the problem. Signed-off-by: Tony Nguyen Signed-off-by: Qi Zhang --- drivers/net/ice/base/

[dpdk-dev] [PATCH 20/27] net/ice/base: modify recursive way of adding nodes

2020-12-14 Thread Qi Zhang
Remove the recursive way of adding the nodes to the layer in order to reduce the stack usage. Instead the algorithm is modified to use a while loop. The previous code was scanning recursively the nodes horizontally. The total stack consumption will be based on number of nodes present on that layer

[dpdk-dev] [PATCH 21/27] net/ice/base: fix for dereference of null pointer

2020-12-14 Thread Qi Zhang
Added handling of allocation fault for ice_vsi_list_map_info Should also check dereference of NULL pointer to filters VSI list information for FWD_TO_VSI_LISt type only, otherwise, the FWD_TO_VSI type filters by the given VSI can't be located. Also the point *pi should not be NULL pointer, it is a

[dpdk-dev] [PATCH 22/27] net/ice/base: use Mode 4 to get PHY Abilites

2020-12-14 Thread Qi Zhang
In case of new link establishment flow we should use Report Default Configuration if FW AQ API version supports it. This patch adds check function for Report Default Configuration support and updates ice_set_fc(), ice_cfg_phy_fec() and ice_aq_get_phy_caps() accordingly. Signed-off-by: Mateusz Pacu

[dpdk-dev] [PATCH 23/27] net/ice/base: align macro names to the specification

2020-12-14 Thread Qi Zhang
For get PHY abilities AQ, the specification defines "report modes" as "with media", "without media" and "active configuration". For clarity, rename macros to align with the specification. Signed-off-by: Anirudh Venkataramanan Signed-off-by: Qi Zhang --- drivers/net/ice/base/ice_adminq_cmd.h |

[dpdk-dev] [PATCH 24/27] net/ice/base: add eCPRI over MAC type 0 flow support

2020-12-14 Thread Qi Zhang
This patch adds extracting field for flow type eCPRI over mac message type 0 and field PC_ID which is used for FDIR/RSS packet steering. This patch also removes redundant hdr bitmask ops for PPPOE hdr. Signed-off-by: Yahui Cao Signed-off-by: Qi Zhang --- drivers/net/ice/base/ice_fdir.c

[dpdk-dev] [PATCH 25/27] net/ice/base: add eCPRI over UDP type 0 flow support

2020-12-14 Thread Qi Zhang
This patch adds extracting field for flow type eCPRI over udp message type 0 and field PC_ID which is used for FDIR/RSS packet steering. Signed-off-by: Yahui Cao Signed-off-by: Qi Zhang --- drivers/net/ice/base/ice_fdir.c | 57 +++- drivers/net/ice/base/ice_fdir.h

[dpdk-dev] [PATCH 26/27] net/ice/base: remove unused struct member

2020-12-14 Thread Qi Zhang
The only time you can ever have a rq_last_status is if a firmware event was somehow reporting a status on the receive queue, which are generally firmware initiated events or mailbox messages from a VF. Mostly this struct member was unused. Fix this problem by still printing the value of the field

[dpdk-dev] [PATCH 27/27] net/ice/base: change a structure

2020-12-14 Thread Qi Zhang
The change is for kernel driver RDMA usage, DPDK driver does not enable RDMA, just for code sync. Signed-off-by: Qi Zhang --- drivers/net/ice/base/ice_adminq_cmd.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/net/ice/base/ice_adminq_cmd.h b/drivers/net/ice/base/

[dpdk-dev] [PATCH v1] app/testpmd: fix default RSS hash not accurate

2020-12-14 Thread Steve Yang
When testpmd launched, the default RSS hash function will only activate 'ETH_RSS_IP', it isn't consistent with the command result of 'port config all rss default'. Removed the default 'rss_hf' limited in 'init_port_config', that will use the default supported RSS hash function for NIC. Fixes: 908

[dpdk-dev] [RFC 0/8] net/mlx5: enhancement metering support

2020-12-14 Thread Li Zhang
Li Zhang (8): net/mlx5: use mask for meter register setting common/mlx5: add definitions for ASO flow meter common/mlx5: add read ASO flow meter HCA capability common/mlx5: add DevX API to create ASO flow meter object net/mlx5: flow meter pool to manage meter object net/mlx5: init/unini

[dpdk-dev] [RFC 1/8] net/mlx5: use mask for meter register setting

2020-12-14 Thread Li Zhang
ASO meter feature may require to locate the flow context tag action after the ASO action. The register used for the meter tag is also used for the meter color: Bits[0-7] A meter color value set by the HW. Bits[8-31] A flow meter context set by SW. Currently the tag action for meter writes all the

[dpdk-dev] [RFC 2/8] common/mlx5: add definitions for ASO flow meter

2020-12-14 Thread Li Zhang
This patch adds different PRM definitions, related to ASO flow meter feature, in MLX5 PMD code. Signed-off-by: Li Zhang --- drivers/common/mlx5/mlx5_prm.h | 75 -- 1 file changed, 71 insertions(+), 4 deletions(-) diff --git a/drivers/common/mlx5/mlx5_prm.h b/driv

[dpdk-dev] [RFC 4/8] common/mlx5: add DevX API to create ASO flow meter object

2020-12-14 Thread Li Zhang
Add DevX API to create ASO flow meter object. Signed-off-by: Li Zhang --- drivers/common/mlx5/mlx5_devx_cmds.c | 54 drivers/common/mlx5/mlx5_devx_cmds.h | 18 +- drivers/common/mlx5/version.map | 3 +- 3 files changed, 73 insertions(+), 2 deletions(-)

[dpdk-dev] [RFC 6/8] net/mlx5: init/uninit flow meter queue for WQE

2020-12-14 Thread Li Zhang
Init/uninit flow meter SQ for WQE Signed-off-by: Li Zhang --- drivers/net/mlx5/linux/mlx5_os.c | 17 drivers/net/mlx5/meson.build | 2 +- drivers/net/mlx5/mlx5.c | 67 - drivers/net/mlx5/mlx5.h | 20 ++--

[dpdk-dev] [RFC 5/8] net/mlx5: flow meter pool to manage meter object

2020-12-14 Thread Li Zhang
Add ASO flow meter pool to manage meter object Signed-off-by: Li Zhang --- drivers/net/mlx5/mlx5.c| 2 +- drivers/net/mlx5/mlx5.h| 190 - drivers/net/mlx5/mlx5_flow.c | 44 ++- drivers/net/mlx5/mlx5_flow.h | 186 - drivers/net/mlx5/m

[dpdk-dev] [RFC 7/8] net/mlx5: aso flow meter send WQE and CQE handle

2020-12-14 Thread Li Zhang
ASO flow meter send WQE and CQE handle functions Signed-off-by: Li Zhang --- drivers/net/mlx5/mlx5.h| 4 + drivers/net/mlx5/mlx5_flow.h | 2 +- drivers/net/mlx5/mlx5_flow_aso.c | 182 + drivers/net/mlx5/mlx5_flow_dv.c| 5 +- drivers/net/m

[dpdk-dev] [RFC 8/8] net/mlx5: add support of ASO meter action

2020-12-14 Thread Li Zhang
When ASO action is available, use it as the meter action Signed-off-by: Shun Hao Signed-off-by: Li Zhang --- drivers/net/mlx5/linux/mlx5_os.c | 4 +- drivers/net/mlx5/mlx5.c| 8 ++ drivers/net/mlx5/mlx5.h| 18 ++--- drivers/net/mlx5/mlx5_flow.c | 66 +++

[dpdk-dev] [RFC 3/8] common/mlx5: add read ASO flow meter HCA capability

2020-12-14 Thread Li Zhang
Read and store the device capability of FLOW_METER_ASO general object, using the DevX API. Signed-off-by: Li Zhang --- drivers/common/mlx5/mlx5_devx_cmds.c | 14 ++ drivers/common/mlx5/mlx5_devx_cmds.h | 8 2 files changed, 22 insertions(+) diff --git a/drivers/common/mlx5

[dpdk-dev] [RFC 1/4] common/mlx5: query register c preserve capability via DevX

2020-12-14 Thread Jiawei Wang
Update function mlx5_devx_cmd_query_hca_attr() to add the reg_c_preserve bit query. The stored metadata in register C may be lost in NIC Tx and FDB egress while doing one one of the following operations: - packet encapsulation. - packet mirroring (multiple processing paths). - packet sampling (

[dpdk-dev] [RFC 2/4] net/mlx5: support E-Switch mirroring and jump in one flow

2020-12-14 Thread Jiawei Wang
mlx5 E-Switch mirroring is implemented as multiple destination array in one steering table. The array currently supports only port ID as destination actions. This patch adds the jump action support to the array as one of destination. The packets can be mirrored to the port and jump to next table i

[dpdk-dev] [RFC 0/4] Add the E-Switch mirroring and jump supports

2020-12-14 Thread Jiawei Wang
MLX5 E-Switch mirroring is implemented as multiple destination array in one steering table. The array currently supports only port ID as destination actions. This RFC adds the below supports for MLX5 PMD driver: - Supports the metadata register Cx preserve capability query. - Supports the jump

[dpdk-dev] [RFC 3/4] net/mlx5: extend the skip scale flag

2020-12-14 Thread Jiawei Wang
The sampling feature introduces the scale flow group with factor, then the scaled table value can be used for the normal path table due to this table be created implicitly. But if the input group value already be scaled, for example the group value of sampling suffix flow, then use 'skip_scale" fl

[dpdk-dev] [RFC 4/4] net/mlx5: supports modify one port in E-Switch mirroring

2020-12-14 Thread Jiawei Wang
While there's the modify action and sample action with ratio=1 in the E-Switch flow, and modify action is after the sample action, means that the modify should only impact on after sample. MLX5 PMD will monitor the above case and split the E-Switch flow into two sub flows, smiliar as sample flow di

[dpdk-dev] [RFC 1/2] app/testpmd: add RSS support in sample action

2020-12-14 Thread Jiawei Wang
Support rss action in the sample sub-actions list. The examples for the sample flow use case and result as below: set sample_actions 0 mark id 0x12 / rss queues 0 1 2 3 end / end flow create 0 ingress group 1 pattern eth / end actions sample ratio 1 index 0 / jump group 2 / end This flow will

[dpdk-dev] [RFC 2/2] net/mlx5: handle the RSS action in the sample

2020-12-14 Thread Jiawei Wang
PMD validates the rss action in the sample sub-actions list, then translate into rdma-core action and it will be used for sample path destination. If the RSS action both in sample sub-actions list and original flow, the rss level and rss type in the sample sub-actions list should be consistent wit

[dpdk-dev] [RFC 0/2] Add RSS action support in the sample sub-actions list

2020-12-14 Thread Jiawei Wang
Currently the sample flow only supports Queue action in NIC-Rx domain. This RFC adds the RSS action support in the sample sub-actions list. The examples for the sample flow with RSS action and result as below: set sample_actions 0 mark id 0x12 / rss queues 0 1 2 3 end / end flow create