[dpdk-dev] [PATCH 4/4] cxgbe: configure PCIe extended tags

2017-05-26 Thread Rahul Lakkireddy
Add support to configure minimum and maximum PCIe extended tag. Signed-off-by: Rahul Lakkireddy Signed-off-by: Kumar Sanghvi --- drivers/net/cxgbe/base/adapter.h | 1 + drivers/net/cxgbe/base/t4_regs.h | 20 drivers/net/cxgbe/cxgbe_main.c | 31 +++

[dpdk-dev] [PATCH 3/4] cxgbe: remove rmb bottleneck in RX path

2017-05-26 Thread Rahul Lakkireddy
rmb before determining rsp_type is a bottleneck. Once we determine rsp-type is FL, we can directly go ahead and read packets based on q->stat->pidx and budget_left. This removes bottleneck of rmb once per every RX packet. Now, rmb exists once per RX batch. Signed-off-by: Rahul Lakkireddy Signed-

[dpdk-dev] [PATCH 1/4] cxgbe: improve latency for slow traffic

2017-05-26 Thread Rahul Lakkireddy
TX coalescing waits for ETH_COALESCE_PKT_NUM packets to be coalesced across bursts before transmitting them. For slow traffic, such as 100 PPS, this approach increases latency since packets are received one at a time and tx coalescing has to wait for ETH_COALESCE_PKT number of packets to arrive be

[dpdk-dev] [PATCH 2/4] cxgbe: fix rxq default params for ports under same PF

2017-05-26 Thread Rahul Lakkireddy
Enabling rx queues with default interrupt parameters doesn't happen for other ports under same PF due to FULL_INIT_DONE flag being set by the first port. Fix is to to allow each port to enable its own rx queues with default parameters. Signed-off-by: Rahul Lakkireddy Signed-off-by: Kumar Sanghvi

[dpdk-dev] [PATCH 12/13] cxgbe: fix port statistics

2017-05-26 Thread Rahul Lakkireddy
Do not count pause frames as part of normal TX/RX Frame/Byte counts. Also, switch to using software counters rather than hardware for RX stats. Signed-off-by: Rahul Lakkireddy Signed-off-by: Kumar Sanghvi --- drivers/net/cxgbe/base/t4_hw.c | 20 drivers/net/cxgbe/base/t4_

[dpdk-dev] [PATCH 13/13] cxgbe: remove RTE_PCI_DRV_INTR_LSC from driver flags

2017-05-26 Thread Rahul Lakkireddy
Remove RTE_PCI_DRV_INTR_LSC from driver flags, since LSC interrupts are currently not supported. Signed-off-by: Rahul Lakkireddy Signed-off-by: Kumar Sanghvi --- drivers/net/cxgbe/cxgbe_ethdev.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/cxgbe/cxgbe_ethdev.c

[dpdk-dev] [PATCH 0/4] cxgbe: latency and performance fixes

2017-05-26 Thread Rahul Lakkireddy
This series of patches rework TX and RX path to reduce latency and improve performance. Patch 1 reduces latency for slow traffic by using status page update on RX path to process batch of packets and improves coalesce TX path to handle slow moving traffic. Patch 2 fixes an issue with RXQ default

[dpdk-dev] [PATCH 11/13] cxgbe: add compressed error vector

2017-05-26 Thread Rahul Lakkireddy
Add support for compressed error vector available in cpl_rx_pkt for Chelsio T6. Signed-off-by: Rahul Lakkireddy Signed-off-by: Kumar Sanghvi --- drivers/net/cxgbe/base/common.h | 5 + drivers/net/cxgbe/base/t4_hw.c | 8 drivers/net/cxgbe/base/t4_msg.h | 16 +++- d

[dpdk-dev] [PATCH 09/13] cxgbe: update RXQ channel mapping for Chelsio T6

2017-05-26 Thread Rahul Lakkireddy
Update MPS buffer groups and TP ingress channel congestion map to correct RXQ allocation for Chelsio T6. Signed-off-by: Rahul Lakkireddy Signed-off-by: Kumar Sanghvi --- drivers/net/cxgbe/base/common.h | 3 +- drivers/net/cxgbe/base/t4_hw.c | 85 dri

[dpdk-dev] [PATCH 10/13] cxgbe: update RX path for Chelsio T6

2017-05-26 Thread Rahul Lakkireddy
Update RX path to reflect Chelsio T6 register value changes. Update ingress pack boundary value based on maximum payload size that can be accommodated by underlying PCI. Update ingress pad boundary value based on smallest memory controller bus width possible. Enforce alignment for free list point

[dpdk-dev] [PATCH 07/13] cxgbe: update hardware info prints

2017-05-26 Thread Rahul Lakkireddy
Update informational prints pertaining to underlying hardware. Add bootstrap firmware version and expansion ROM version prints. Move the prints to a single function. Signed-off-by: Rahul Lakkireddy Signed-off-by: Kumar Sanghvi --- drivers/net/cxgbe/base/common.h | 6 +- drivers/net/cxgbe/base

[dpdk-dev] [PATCH 03/13] cxgbe: update flash part information

2017-05-26 Thread Rahul Lakkireddy
Update flash part identification and decoding to accommodate new flash parts. Signed-off-by: Rahul Lakkireddy Signed-off-by: Kumar Sanghvi --- drivers/net/cxgbe/base/t4_hw.c | 106 +++-- 1 file changed, 81 insertions(+), 25 deletions(-) diff --git a/drivers/

[dpdk-dev] [PATCH 08/13] cxgbe: update TX path for Chelsio T6

2017-05-26 Thread Rahul Lakkireddy
Update TX path to reflect Chelsio T6 changes. Signed-off-by: Rahul Lakkireddy Signed-off-by: Kumar Sanghvi --- drivers/net/cxgbe/sge.c | 14 ++ 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/drivers/net/cxgbe/sge.c b/drivers/net/cxgbe/sge.c index 2f9e12c..699b577 100

[dpdk-dev] [PATCH 06/13] cxgbe: add forward error correction support

2017-05-26 Thread Rahul Lakkireddy
Add forward error correction (FEC) support and update link configuration. Signed-off-by: Rahul Lakkireddy Signed-off-by: Kumar Sanghvi --- drivers/net/cxgbe/base/common.h | 8 + drivers/net/cxgbe/base/t4_hw.c | 57 ++--- drivers/net/cxgbe/base/t

[dpdk-dev] [PATCH 05/13] cxgbe: update link speeds and port modules

2017-05-26 Thread Rahul Lakkireddy
Add 25G and 100G link speeds and update supported port modules. Signed-off-by: Rahul Lakkireddy Signed-off-by: Kumar Sanghvi --- drivers/net/cxgbe/base/common.h | 4 ++-- drivers/net/cxgbe/base/t4_hw.c | 17 + drivers/net/cxgbe/base/t4fw_interface.h | 18 ++

[dpdk-dev] [PATCH 04/13] cxgbe: grab available ports after firmware reset

2017-05-26 Thread Rahul Lakkireddy
Move code to get the available ports from the firmware after it had been reset. This ensures that driver uses the latest info on available ports after firmware reset. Signed-off-by: Rahul Lakkireddy Signed-off-by: Kumar Sanghvi --- drivers/net/cxgbe/cxgbe_main.c | 36 --

[dpdk-dev] [PATCH 02/13] cxgbe: update register dump

2017-05-26 Thread Rahul Lakkireddy
Add Chelsio T6 registers to register dump. Signed-off-by: Rahul Lakkireddy Signed-off-by: Kumar Sanghvi --- drivers/net/cxgbe/base/t4_hw.c | 567 + 1 file changed, 567 insertions(+) diff --git a/drivers/net/cxgbe/base/t4_hw.c b/drivers/net/cxgbe/base/t4_

[dpdk-dev] [PATCH 01/13] cxgbe: add support to run Chelsio T6 cards

2017-05-26 Thread Rahul Lakkireddy
Add code to detect and run T6 devices. Update PCI ID Device table with Chelsio T6 device ids and update documentation. Signed-off-by: Rahul Lakkireddy Signed-off-by: Kumar Sanghvi --- doc/guides/nics/cxgbe.rst | 41 +- doc/guides/rel_notes/release_17_08

[dpdk-dev] [PATCH 00/13] cxgbe: add support for Chelsio T6 family of adapters

2017-05-26 Thread Rahul Lakkireddy
This series of patches add support for Chelsio T6 family of adapters. Patches 1 - 4 update CXGBE PMD to detect and run Chelsio T6 cards. Patches 5 - 6 add new link speeds and update port modules. Patch 7 updates information prints to accommodate Chelsio T6 cards. Patch 8 updates TX path to refl

[dpdk-dev] [PATCH 10/10] net/i40e/base: update base code info

2017-05-26 Thread Jingjing Wu
Signed-off-by: Jingjing Wu --- drivers/net/i40e/base/README | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/i40e/base/README b/drivers/net/i40e/base/README index 0da9f67..270d7f1 100644 --- a/drivers/net/i40e/base/README +++ b/drivers/net/i40e/base/README @@ -34,7

[dpdk-dev] [PATCH 09/10] net/i40e/base: update FW AQ API version to 1.7

2017-05-26 Thread Jingjing Wu
Signed-off-by: Jingjing Wu --- drivers/net/i40e/base/i40e_type.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/i40e/base/i40e_type.h b/drivers/net/i40e/base/i40e_type.h index af5347b..3892f52 100644 --- a/drivers/net/i40e/base/i40e_type.h +++ b/drivers/net/i40e/

[dpdk-dev] [PATCH 04/10] net/i40e/base: add support for Adaptive Virtual Function

2017-05-26 Thread Jingjing Wu
Add device id define and mac_type assignment needed for Adaptive Virtual Function. Signed-off-by: Jingjing Wu --- drivers/net/i40e/base/i40e_common.c | 1 + drivers/net/i40e/base/i40e_devids.h | 1 + 2 files changed, 2 insertions(+) diff --git a/drivers/net/i40e/base/i40e_common.c b/drivers/ne

[dpdk-dev] [PATCH 08/10] net/i40e/base: track id can be 0

2017-05-26 Thread Jingjing Wu
track_id == 0 is valid for “read only” profiles when profile does not have any “write” commands. Signed-off-by: Jingjing Wu --- drivers/net/i40e/base/i40e_common.c| 7 +-- drivers/net/i40e/base/i40e_prototype.h | 12 +++- 2 files changed, 8 insertions(+), 11 deletions(-) diff -

[dpdk-dev] [PATCH 05/10] net/i40e/base: store the requested FEC information

2017-05-26 Thread Jingjing Wu
Store information about FEC modes, that were requested. It will be used in printing link status information function and this way there is no need to call admin queue there. Signed-off-by: Jingjing Wu --- drivers/net/i40e/base/i40e_common.c | 4 drivers/net/i40e/base/i40e_type.h | 1 + 2

[dpdk-dev] [PATCH 07/10] net/i40e/base: report supported link modes

2017-05-26 Thread Jingjing Wu
Signed-off-by: Jingjing Wu --- drivers/net/i40e/base/i40e_adminq_cmd.h | 20 ++-- drivers/net/i40e/base/i40e_common.c | 18 +++--- 2 files changed, 33 insertions(+), 5 deletions(-) diff --git a/drivers/net/i40e/base/i40e_adminq_cmd.h b/drivers/net/i40e/base/i40e_

[dpdk-dev] [PATCH 06/10] net/i40e/base: add new phy types for 25G AOC and ACC

2017-05-26 Thread Jingjing Wu
This patch adds new phy types for 25G Active Optical Cables (AOC) and Active Copper Cables (ACC) support. Signed-off-by: Jingjing Wu --- drivers/net/i40e/base/i40e_adminq_cmd.h | 4 drivers/net/i40e/base/i40e_common.c | 2 ++ 2 files changed, 6 insertions(+) diff --git a/drivers/net/i4

[dpdk-dev] [PATCH 00/10] net/i40e: base code update

2017-05-26 Thread Jingjing Wu
i40e base code upate. The main changes are: - use virtchnl.h instead of i40e_virtchnl.h - add support for Adaptive Virtual Function - add new AQ commands for read/write PHY registers - add new phy types for 25G Jingjing Wu (10): net/i40e/base: use new virtchnl header file net/i40e/base: sy

[dpdk-dev] [PATCH 02/10] net/i40e/base: sync nvmupdate command and adminq subtask

2017-05-26 Thread Jingjing Wu
During NVMupdate, state machine gets into unrecoverable state because i40e_clean_adminq_subtask can get scheduled after the admin queue command but before other state variables are updated. This patch adds locking around admin queue command and update of state variables so that adminq_subtask will

[dpdk-dev] [PATCH 03/10] net/i40e/base: add AQ command for read/write PHY registers

2017-05-26 Thread Jingjing Wu
This patch adds new additional command for accessing to PHY registers. Signed-off-by: Jingjing Wu --- drivers/net/i40e/base/i40e_adminq_cmd.h | 18 + drivers/net/i40e/base/i40e_common.c | 70 + drivers/net/i40e/base/i40e_prototype.h | 9 + 3 file

[dpdk-dev] [PATCH 01/10] net/i40e/base: use new virtchnl header file

2017-05-26 Thread Jingjing Wu
Modify the necessary files to be compatible with the new virtchnl.h file instead of relying on i40e_virtchnl.h variant. This mostly changes references to VIRTCHNL_ variables by removing prefix of I40E_. Signed-off-by: Jingjing Wu --- drivers/net/i40e/base/i40e_common.c| 24 +- drivers/net/i

Re: [dpdk-dev] [PATCH v3 1/3] lib: add Generic Receive Offload API framework

2017-05-26 Thread Jiayu Hu
On Sat, May 27, 2017 at 07:10:21AM +0800, Ananyev, Konstantin wrote: > Hi Jiayu, > > > -Original Message- > > From: Hu, Jiayu > > Sent: Friday, May 26, 2017 8:26 AM > > To: Ananyev, Konstantin > > Cc: dev@dpdk.org; Wiles, Keith ; > > yuanhan@linux.intel.com > > Subject: Re: [PATCH v3

[dpdk-dev] [PATCH 2/3] net/ixgbe: enable signature match for consistent API

2017-05-26 Thread Qi Zhang
Enable signature match for rte_flow API. RTE_FLOW_ITEM_TYPE_ROUGHLY specify a signature match. Signed-off-by: Qi Zhang --- drivers/net/ixgbe/ixgbe_flow.c | 71 +++--- 1 file changed, 59 insertions(+), 12 deletions(-) diff --git a/drivers/net/ixgbe/ixgbe_flow.

[dpdk-dev] [PATCH 3/3] net/ixgbe: enable IPv6 for consistent API

2017-05-26 Thread Qi Zhang
Enable IPv6 support with rte_flow API. Only support Sigature Match. Signed-off-by: Qi Zhang --- drivers/net/ixgbe/ixgbe_flow.c | 112 ++--- 1 file changed, 104 insertions(+), 8 deletions(-) diff --git a/drivers/net/ixgbe/ixgbe_flow.c b/drivers/net/ixgbe/ixgbe

[dpdk-dev] [PATCH 1/3] net/ixgbe: replace macro with inline function

2017-05-26 Thread Qi Zhang
Code clean, replace macro with inline funtion for searching next no void pattern and next no void action Signed-off-by: Qi Zhang --- drivers/net/ixgbe/ixgbe_flow.c | 208 +++-- 1 file changed, 73 insertions(+), 135 deletions(-) diff --git a/drivers/net/ixgbe/

[dpdk-dev] [PATCH 0/3] net/ixgbe: enable signature match and ipv6 for consistent API.

2017-05-26 Thread Qi Zhang
the patchset is base on http://dpdk.org/dev/patchwork/patch/24482/ http://dpdk.org/dev/patchwork/patch/24476/ Qi Zhang (3): net/ixgbe: replace macro with inline function net/ixgbe: enable signature match for consistent API net/ixgbe: enable IPv6 for consistent API drivers/net/ixgbe/ixgbe_f

[dpdk-dev] [PATCH] net/i40e: implement flag action for FDIR

2017-05-26 Thread Beilei Xing
This commit adds flag action support for flow director. Signed-off-by: Beilei Xing --- drivers/net/i40e/i40e_flow.c | 26 +++--- 1 file changed, 15 insertions(+), 11 deletions(-) diff --git a/drivers/net/i40e/i40e_flow.c b/drivers/net/i40e/i40e_flow.c index 218ece1..2af88c6

[dpdk-dev] [RFC] Add Membership Library

2017-05-26 Thread Yipeng Wang
A proposal for a new DPDK library that is called “Membership Library”. It provides an API for DPDK applications to insert a new member, delete an existing member, or query the existence of a member in a given set, or a group of sets. For the case of a group of sets the library will return not only

Re: [dpdk-dev] [PATCH v3 1/3] lib: add Generic Receive Offload API framework

2017-05-26 Thread Ananyev, Konstantin
Hi Jiayu, > -Original Message- > From: Hu, Jiayu > Sent: Friday, May 26, 2017 8:26 AM > To: Ananyev, Konstantin > Cc: dev@dpdk.org; Wiles, Keith ; > yuanhan@linux.intel.com > Subject: Re: [PATCH v3 1/3] lib: add Generic Receive Offload API framework > > Hi Konstantin, > > On Wed, M

[dpdk-dev] Why DPDK is not using compressed TRIE for LPM6?

2017-05-26 Thread Atul Shree
Hello All, I was doing some experiments related to LPM6 look up and I have added 20K entries in the table. By looking at the rte_lpm6_lookup() code I found an opportunity to compress the TRIE and there is a significant improvement after compression. Here are my questions: Q1: Why DPDK is not

Re: [dpdk-dev] [PATCH 1/6] net/vmxnet3: retain counters on restart

2017-05-26 Thread Nachi Prachanda
> -Original Message- > From: Shrikrishna Khare [mailto:skh...@shri-linux.eng.vmware.com] > Sent: Friday, May 26, 2017 10:29 AM > To: Nachi Prachanda > Cc: skh...@vmware.com; Chas Williams III; dev@dpdk.org > Subject: RE: [PATCH 1/6] net/vmxnet3: retain counters on restart > > > > On Th

[dpdk-dev] [PATCH] cryptodev: make crypto session device independent

2017-05-26 Thread Michal Jastrzebski
From: Slawomir Mrozowicz Change crypto device's session management to make it device independent and simplify architecture when session is intended to be used on more than one device. Sessions private data is agnostic to underlying device by adding an indirection in the sessions private data usi

[dpdk-dev] [PATCH] cryptodev: make crypto session device independent

2017-05-26 Thread Michal Jastrzebski
From: Slawomir Mrozowicz Change crypto device's session management to make it device independent and simplify architecture when session is intended to be used on more than one device. Sessions private data is agnostic to underlying device by adding an indirection in the sessions private data usi

[dpdk-dev] [PATCH v2 23/25] bnxt: add code to configure a default VF VLAN

2017-05-26 Thread Ajit Khaparde
This patch adds code to insert a default VF VLAN. Also track the current default VLAN per vnic for the VF. When setting the default VLAN, avoid setting it to the current value. Signed-off-by: Stephen Hurd Signed-off-by: Ajit Khaparde -- v1->v2: regroup related patches and incorporate other revi

[dpdk-dev] [PATCH v2 13/25] bnxt: add rxq/txq info_get dev_ops

2017-05-26 Thread Ajit Khaparde
Add support for txq_info_get and rxq_info_get dev_ops Signed-off-by: Ajit Khaparde -- v1->v2: regroup related patches and incorporate other review comments --- drivers/net/bnxt/bnxt_ethdev.c | 39 +++ 1 file changed, 39 insertions(+) diff --git a/drivers/net

[dpdk-dev] [PATCH v2 11/25] bnxt: add support to set MTU

2017-05-26 Thread Ajit Khaparde
This patch adds support to modify MTU using the set_mtu dev_op. To support frames > 2k, the PMD creates an aggregator ring. When a frame greater than 2k is received, it is fragmented and the resulting fragments are DMA'ed to the aggregator ring. Now the driver can support jumbo frames upto 9500 byt

[dpdk-dev] [PATCH v2 22/25] bnxt: add support to add a VF MAC address

2017-05-26 Thread Ajit Khaparde
This patch adds support to allocate a filter and program it in the hardware for every MAC address added to the specified function. Signed-off-by: Stephen Hurd Signed-off-by: Ajit Khaparde -- v1->v2: regroup related patches and incorporate other review comments --- drivers/net/bnxt/bnxt_filter.

[dpdk-dev] [PATCH v2 12/25] bnxt: add support for LRO

2017-05-26 Thread Ajit Khaparde
This patch adds support to enable and disable LRO To support this feature, the driver creates an aggregrator ring. When the hardware starts doing LRO, it sends a tpa_start completion. When the driver receives a tpa_end completion, it indicates that the LRO chaining is complete. Signed-off-by: Stee

[dpdk-dev] [PATCH v2 24/25] bnxt: Add support to set VF rxmode

2017-05-26 Thread Ajit Khaparde
This patch adds support to configure the VF L2 Rx settings. The per VF setting is maintained in bnxt_child_vf_info.l2_rx_mask Signed-off-by: Ajit Khaparde -- v1->v2: regroup related patches and incorporate other review comments --- drivers/net/bnxt/bnxt_hwrm.c | 24 +--

[dpdk-dev] [PATCH v2 25/25] update release notes

2017-05-26 Thread Ajit Khaparde
Update release doc briefly describing updates to bnxt PMD. Signed-off-by: Ajit Khaparde --- doc/guides/rel_notes/release_17_08.rst | 8 1 file changed, 8 insertions(+) diff --git a/doc/guides/rel_notes/release_17_08.rst b/doc/guides/rel_notes/release_17_08.rst index 74aae10..340c820 1

[dpdk-dev] [PATCH v2 20/25] bnxt: add support to get and clear VF specific stats

2017-05-26 Thread Ajit Khaparde
This patch adds code to get and clear VF stats. It also adds the necessary HWRM structures to send the command to the firmware. Signed-off-by: Stephen Hurd Signed-off-by: Ajit Khaparde -- v1->v2: regroup related patches and incorporate other review comments --- drivers/net/bnxt/bnxt_hwrm.c

[dpdk-dev] [PATCH v2 21/25] bnxt: add code to determine the Rx status of VF

2017-05-26 Thread Ajit Khaparde
This patch adds code to determine the Rx status of a VF. It adds the rte_pmd_bnxt_get_vf_rx_status call, which calculates the VNIC count of the function to get the Rx status. Signed-off-by: Stephen Hurd Signed-off-by: Ajit Khaparde -- v1->v2: regroup related patches and incorporate other review

[dpdk-dev] [PATCH v2 19/25] bnxt: add support for VLAN stripq, anti spoof and filtering for VFs

2017-05-26 Thread Ajit Khaparde
This patch adds support for VF VLAN stripq, VF VLAN anti spoof and VF VLAN filtering. The VF VLAN filtering needs the VLAN anti spoof setting to be set first before the command to program the VLAN table is sent to the firmware. Signed-off-by: Stephen Hurd Signed-off-by: Ajit Khaparde -- v1->v2:

[dpdk-dev] [PATCH v2 18/25] bnxt: add support for set VF QOS and MAC anti spoof

2017-05-26 Thread Ajit Khaparde
This patch adds support to 1) enable VF MAC anti spoof. 2) QOS configuration for specified VF. Signed-off-by: Ajit Khaparde -- v1->v2: regroup related patches and incorporate other review comments --- drivers/net/bnxt/bnxt.h | 2 + drivers/net/bnxt/bnxt_hwrm.c |

[dpdk-dev] [PATCH v2 17/25] bnxt: add support for tx loopback, set vf mac and queues drop

2017-05-26 Thread Ajit Khaparde
Add functions rte_pmd_bnxt_set_tx_loopback, rte_pmd_bnxt_set_all_queues_drop_en and rte_pmd_bnxt_set_vf_mac_addr to configure tx_loopback, queue_drop and VF MAC address setting in the hardware. It also adds the necessary functions to send the HWRM commands to the firmware. Signed-off-by: Steeven L

[dpdk-dev] [PATCH v2 16/25] bnxt: add support for led on/off

2017-05-26 Thread Ajit Khaparde
This patch adds support for dev_led_on/off dev_ops HWRM calls added: bnxt_hwrm_port_led_qcaps() bnxt_hwrm_port_led_cfg() Signed-off-by: Ajit Khaparde --- drivers/net/bnxt/bnxt.h| 39 ++ drivers/net/bnxt/bnxt_ethdev.c | 20 + drivers/net/bnxt/bnxt_hwrm.c | 70

[dpdk-dev] [PATCH v2 14/25] bnxt: add code to support VLAN pvid set dev_op

2017-05-26 Thread Ajit Khaparde
This patch adds code to support vlan_pvid_set dev_op Signed-off-by: Ajit Khaparde -- v1->v2: regroup related patches and incorporate other review comments --- drivers/net/bnxt/bnxt.h| 1 + drivers/net/bnxt/bnxt_ethdev.c | 21 + drivers/net/bnxt/bnxt_hwrm.c | 31 ++

[dpdk-dev] [PATCH v2 15/25] bnxt: reorg the query stats code

2017-05-26 Thread Ajit Khaparde
1) Use hwrm_stat_ctx_query command to query statistics Using hwrm_stat_ctx_query command will allow polling the statistics from hardware instead of using the current push model from the hardware which does a DMA of the stats to the host at fixed intervals. 2) Use the rx_mbuf_alloc_fail to track mbu

[dpdk-dev] [PATCH v2 10/25] bnxt: add support for fw_version_get dev_op

2017-05-26 Thread Ajit Khaparde
This patch adds support for fw_version_get dev_op Signed-off-by: Ajit Khaparde -- v1->v2: regroup related patches and incorporate other review comments --- doc/guides/nics/features/bnxt.ini | 1 + drivers/net/bnxt/bnxt_ethdev.c| 20 2 files changed, 21 insertions(+) d

[dpdk-dev] [PATCH v2 09/25] bnxt: add support for set multicast addr list and MAC addr set

2017-05-26 Thread Ajit Khaparde
This patch adds support for set_mc_addr_list and mac_addr_set dev_ops Signed-off-by: Ajit Khaparde -- v1->v2: regroup related patches and incorporate other review comments --- doc/guides/nics/features/bnxt.ini | 1 + drivers/net/bnxt/bnxt_ethdev.c| 70 ++

[dpdk-dev] [PATCH v2 08/25] bnxt: Add support for VLAN filter and strip dev_ops

2017-05-26 Thread Ajit Khaparde
This patch adds VLAN strip and offload callbacks. To add a VLAN filter: For each VNIC and each associated filter(s) if VLAN exists: if VLAN matches vlan_id VLAN filter already exists, just skip and continue else add a new MAC+VLAN

[dpdk-dev] [PATCH v2 07/25] bnxt: add support for xstats get/reset

2017-05-26 Thread Ajit Khaparde
This patch adds support to get and reset xstats dev_ops dev_ops added: xstats_get, xstats_get_name, xstats_reset HWRM commands added: hwrm_port_qstats, hwrm_port_clr_stats Signed-off-by: Ajit Khaparde -- v1->v2: regroup related patches and incorporate other review comments --- drivers/net/bnx

[dpdk-dev] [PATCH v2 06/25] bnxt: add tunneling support

2017-05-26 Thread Ajit Khaparde
Add support for udp_tunnel_port_add/del dev_ops to configure a UDP port for VXLAN and Geneve Tunnel protocols. The HWRM supports only one global destination port for a tunnel type, use a referene counter to keep track of its usage. Cache the configured VXLAN/Geneve ports and use that value to check

[dpdk-dev] [PATCH v2 04/25] bnxt: support lack of huge pages

2017-05-26 Thread Ajit Khaparde
rte_malloc_virt2phy() does not return a physical address if huge pages aren't in use. Further, rte_memzone->phys_addr is not a physical address. Use rte_mem_virt2phy() and manually lock pages to support lack of huge pages. Also check the return value of rte_mem_virt2phy() Verify the function re

[dpdk-dev] [PATCH v2 05/25] bnxt: add additonal HWRM debug info to error messages

2017-05-26 Thread Ajit Khaparde
Add the cmd_err and opaque_0 and opaque_1 fields to HWRM error messages. These allow better debugging of some classes of HWRM errors. Signed-off-by: Stephen Hurd Signed-off-by: Ajit Khaparde -- v1->v2: regroup related patches and incorporate other review comments --- drivers/net/bnxt/bnxt_hwr

[dpdk-dev] [PATCH v2 03/25] bnxt: handle VF/PF initialization appropriately

2017-05-26 Thread Ajit Khaparde
1) For a VF, query the firmware to determine if a MAC address is already configured. If not configure a random default MAC address. 2) Do not initialize the default completion ring in bnxt_alloc_hwrm_rings(). 3) While registering for async events with the firmware, use func_vf_cfg for a VF and use

[dpdk-dev] [PATCH v2 02/25] bnxt: code reorg to properly allocate resources for PF/VF

2017-05-26 Thread Ajit Khaparde
1) Move the function reset to bnxt_dev_init. On the same lines, setup, enable and request interrupt to init path. Memory allocation is also being done in the init path. 2) After a function reset, configure the VFs. Distribute resources evenly between all functions (PF and VF) for now. In the futur

[dpdk-dev] [PATCH v2 00/25] bnxt patchset

2017-05-26 Thread Ajit Khaparde
This patchset amongst other changes adds support few more dev_ops, updates HWRM to version 1.7.7, switches to polling stats from the hardware, support for Jumbo MTU, LRO etc.. As suggedted for the previous submission: Grouped in the end, it also has PMD specific APIs to control VF from PF. I have

[dpdk-dev] [PATCH 5/5] net/szedata2: add more supported firmwares

2017-05-26 Thread Matej Vido
Add IBUF and OBUF offsets definitions for new firmwares. Signed-off-by: Matej Vido --- config/common_base|8 +-- doc/guides/nics/szedata2.rst | 32 ++-- drivers/net/szedata2/szedata2_iobuf.c | 148 +++-- 3 files changed, 168 ins

[dpdk-dev] [PATCH 3/5] net/szedata2: refactor ibuf and obuf address definition

2017-05-26 Thread Matej Vido
This is to prepare for firmwares with multiple ibufs and obufs. Offsets of ibufs and obufs are defined in array. Functions which operate on ibufs and obufs iterate over this array. Signed-off-by: Matej Vido --- drivers/net/szedata2/Makefile |1 + drivers/net/szedata2/rte_eth_szedat

[dpdk-dev] [PATCH 4/5] net/szedata2: move ibuf and obuf to specific header

2017-05-26 Thread Matej Vido
Signed-off-by: Matej Vido --- drivers/net/szedata2/rte_eth_szedata2.h | 216 +- drivers/net/szedata2/szedata2_iobuf.h | 261 +++ 2 files changed, 264 insertions(+), 213 deletions(-) diff --git a/drivers/net/szedata2/rte_eth_szedata2.h b/dr

[dpdk-dev] [PATCH 2/5] net/szedata2: refactor ibuf and obuf read and write

2017-05-26 Thread Matej Vido
Remove unused read and write functions. Use rte_read*, rte_write* functions to access ibuf and obuf address space. Signed-off-by: Matej Vido --- drivers/net/szedata2/rte_eth_szedata2.c |4 +- drivers/net/szedata2/rte_eth_szedata2.h | 184 +++ 2 files changed, 64

[dpdk-dev] [PATCH 1/5] net/szedata2: refactor ibuf and obuf names

2017-05-26 Thread Matej Vido
Signed-off-by: Matej Vido --- drivers/net/szedata2/rte_eth_szedata2.c | 80 +++--- drivers/net/szedata2/rte_eth_szedata2.h | 48 +- 2 files changed, 64 insertions(+), 64 deletions(-) diff --git a/drivers/net/szedata2/rte_eth_szedata2.c b/drivers/net/s

[dpdk-dev] [PATCH 2/2] net/softnic: add traffic management ops

2017-05-26 Thread Jasvinder Singh
The traffic management specific functions of the softnic driver are supplied through set of pointers contained in the generic structure of type 'rte_tm_ops'. These functions help to build and manage the hierarchical QoS scheduler for traffic management. Signed-off-by: Jasvinder Singh Signed-off-b

[dpdk-dev] [PATCH 1/2] net/softnic: add softnic PMD for traffic management

2017-05-26 Thread Jasvinder Singh
Softnic PMD implements HQoS scheduler as software fallback solution for the hardware with no HQoS support. When application call rx function on this device, it simply invokes underlay device rx function. On the egress path, softnic tx funtion enqueues the packets into QoS scheduler. The packets are

[dpdk-dev] [PATCH 0/2] net/softnic: sw fall-back for traffic management

2017-05-26 Thread Jasvinder Singh
The SoftNIC PMD provides SW fall-back option for the NICs not supporting the Traffic Management (TM) features. SoftNIC PMD overview: - The SW fall-back is based on the existing librte_sched DPDK library. - The TM-agnostic port (the underlay device) is wrapped into a TM-aware softnic port (the o

Re: [dpdk-dev] [PATCH 1/6] net/vmxnet3: retain counters on restart

2017-05-26 Thread Shrikrishna Khare
On Fri, 19 May 2017, Charles (Chas) Williams wrote: > From: Nachiketa Prachanda > > Most nics like virtio, igb/ixgbe etc. don't reset counters on > dev_start and arguably this helps in monitoring the counters > across a longer time span with multiple device start/stops. > vmxnet3 behavior is o

Re: [dpdk-dev] [PATCH 1/6] net/vmxnet3: retain counters on restart

2017-05-26 Thread Shrikrishna Khare
On Thu, 25 May 2017, Nachi Prachanda wrote: > > From: Shrikrishna Khare [mailto:skh...@shri-linux.eng.vmware.com] > > Sent: Thursday, May 25, 2017 1:27 PM > > > > On Thu, 25 May 2017, Nachi Prachanda wrote: > > > > > > From: Shrikrishna Khare [mailto:skh...@shri-linux.eng.vmware.com] > > > > S

[dpdk-dev] [RFC] Kernel Control Path (KCP)

2017-05-26 Thread Ferruh Yigit
We are looking for re-sending [1] the Kernel Control Path (KCP) with some updates [2]. Mainly this is an usability improvement for DPDK. And a quick reminder about what KCP is: "KCP is Linux virtual network interface that can control DPDK ports". So DPDK interfaces, somehow will be visible and

Re: [dpdk-dev] [PATCH] net/avp: remove redundant assignment

2017-05-26 Thread Ferruh Yigit
On 5/26/2017 2:05 PM, Legacy, Allain wrote: >> -Original Message- >> From: Ferruh Yigit [mailto:ferruh.yi...@intel.com] >> Sent: Thursday, May 25, 2017 1:53 PM >> To: Legacy, Allain; Peters, Matt >> Cc: dev@dpdk.org; YIGIT, FERRUH >> Subject: [PATCH] net/avp: remove redundant assignment >>

Re: [dpdk-dev] i40e igb_uio: reset pci on process exit

2017-05-26 Thread Gregory Etelson
I did not look into VFIO driver yet Regards, Gregory On Friday, 26 May 2017 18:53:21 IDT Stephen Hemminger wrote: > On Fri, 26 May 2017 09:17:33 +0300 > Gregory Etelson wrote: > > > Thank you. > > > > Regards, > > Gregory > > > > On Friday, 26 May 2017 09:05:11 IDT Shijith Thotton wrote: > >

[dpdk-dev] [PATCH 2/2] drivers/net: use device name from device structure

2017-05-26 Thread Ferruh Yigit
Device name resides in two different locations, in rte_device->name and in ethernet device private data. For now, the copy in the ethernet device private data is required for multi process support, the name is the how secondary process finds about primary process device. But for drivers there is

[dpdk-dev] [PATCH 1/2] ethdev: ensure same name size for device and ethdev

2017-05-26 Thread Ferruh Yigit
rte_device->name copied into eth_dev->name, right now size is same for both but the requirement is not clear. This patch highlights the relation without changing actual sizes. Signed-off-by: Ferruh Yigit --- lib/librte_eal/common/include/rte_dev.h | 2 ++ lib/librte_eal/common/include/rte_d

Re: [dpdk-dev] i40e igb_uio: reset pci on process exit

2017-05-26 Thread Stephen Hemminger
On Fri, 26 May 2017 09:17:33 +0300 Gregory Etelson wrote: > Thank you. > > Regards, > Gregory > > On Friday, 26 May 2017 09:05:11 IDT Shijith Thotton wrote: > > On Fri, May 26, 2017 at 07:30:58AM +0300, Gregory Etelson wrote: > > > > Hi Gregory, > > > > The patch is useful for LiquidIO PMD as

[dpdk-dev] [PATCH 2/2] app/testpmd: add support for different aggregation mode in IEEE802.3ad bonding

2017-05-26 Thread Daniel Mrzyglod
This patch add support for different aggregator modes in similar manner that is provided in linux kernel. testpmd> set bonding agg_mode testpmd> show bonding config Signed-off-by: Daniel Mrzyglod --- app/test-pmd/cmdline.c | 90 +- 1 file chang

[dpdk-dev] [PATCH 0/2] Bonding add additional aggregators mode for 802.3AD

2017-05-26 Thread Daniel Mrzyglod
This patchseries add support for other aggregators in similar manner that is provided in Linux kernel. Modes added in patches: stable - this is default mode from IEEE802.11AX/IEEE802.3AD documentation bandwidth - takes aggregator with the biggest available speed count - takes aggregators with the

[dpdk-dev] [PATCH 1/2] drivers/bonding: add other agg selection modes for mode4

2017-05-26 Thread Daniel Mrzyglod
This patch add support for setting additional aggregator modes for IEEE802.3AD in similar manner that are supported in kernel mode. This will add support for other manner: stable - default mode taken from IEEE802.11AX this is default aggregator mode bandwidth - takes aggregator with highest bandwi

[dpdk-dev] [PATCH] ethdev: moved bypass functions to ixgbe pmd

2017-05-26 Thread Radu Nicolau
Moved all bypass functions to ixgbe pmd and removed function pointers from the eth_dev_ops struct. Also cleared some checkpatch errors. Signed-off-by: Radu Nicolau --- app/test-pmd/cmdline.c | 100 ++-- app/test-pmd/testpmd.c | 11 +- app/test-

[dpdk-dev] [PATCH 1/2] net/sfc: check added but not completed descs on EF10 Tx reap

2017-05-26 Thread Andrew Rybchenko
There is not point to check other Tx descriptors. It is important if Tx datapath does not reset Tx descriptor mbuf pointer to NULL on completion (EF10 simple Tx will do). Signed-off-by: Andrew Rybchenko Reviewed-by: Andy Moreton Reviewed-by: David Riddoch --- drivers/net/sfc/sfc_ef10_tx.c | 13

[dpdk-dev] [PATCH 2/2] net/sfc: rely on one desc is one mbuf in simple EF10 Tx reap

2017-05-26 Thread Andrew Rybchenko
Signed-off-by: Andrew Rybchenko Reviewed-by: Andy Moreton Reviewed-by: David Riddoch --- drivers/net/sfc/sfc_ef10_tx.c | 54 +++ 1 file changed, 44 insertions(+), 10 deletions(-) diff --git a/drivers/net/sfc/sfc_ef10_tx.c b/drivers/net/sfc/sfc_ef10_tx.c

[dpdk-dev] [PATCH] net/ring: fix adding MAC addresses

2017-05-26 Thread Charles (Chas) Williams
When .mac_addr_add() was changed to allow a return code, ring was changed to return -ENOTSUP. This changes the behavior of the rte_ring driver in a way that does not maintain backward compatibility. Additionally, if the intent is to return -ENOTSUP, you could simply not define the stubs. Fixes:

[dpdk-dev] ixgbe: link status for PF up/down is not updating using LSI DPDK16.11.1 Sample App

2017-05-26 Thread Shashikant Poonia
Hi All, I am running Link Status Interrupt(LSI) DPDK sample application to test link status by making PF up/down using 'ip link set dev up/down'. I would think, it should trigger 'ixgbe_dev_interrupt_handler()' when we do interface up/down. But looks like it is not triggered 'ixgbe_dev_interrup

Re: [dpdk-dev] [PATCH] net/avp: remove redundant assignment

2017-05-26 Thread Legacy, Allain
> -Original Message- > From: Ferruh Yigit [mailto:ferruh.yi...@intel.com] > Sent: Thursday, May 25, 2017 1:53 PM > To: Legacy, Allain; Peters, Matt > Cc: dev@dpdk.org; YIGIT, FERRUH > Subject: [PATCH] net/avp: remove redundant assignment > > dev_info->driver_name is assigned by rte_eth_dev

Re: [dpdk-dev] Adding a new pipeline type in IP_PIPELINE application

2017-05-26 Thread Dumitrescu, Cristian
> -Original Message- > From: dev [mailto:dev-boun...@dpdk.org] On Behalf Of Nidhia Varghese > Sent: Friday, May 26, 2017 11:34 AM > To: us...@dpdk.org; dev@dpdk.org > Subject: [dpdk-dev] Adding a new pipeline type in IP_PIPELINE application > > Hi all, > > I have included a new pipeline

[dpdk-dev] [PATCH] net/i40e: get information about ddp profile

2017-05-26 Thread Andrey Chilikin
This patch adds ability to request information about dynamic device personalization profile Signed-off-by: Andrey Chilikin --- drivers/net/i40e/rte_pmd_i40e.c | 163 ++- drivers/net/i40e/rte_pmd_i40e.h | 45 +++ 2 files changed, 204 insertions(+),

[dpdk-dev] [PATCH] __rte_hash_add_key_with_hash not releasing multiwriter_lock in failure paths

2017-05-26 Thread mstolarchuk
Signed-off-by: mstolarchuk --- lib/librte_hash/rte_cuckoo_hash.c | 13 + 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/lib/librte_hash/rte_cuckoo_hash.c b/lib/librte_hash/rte_cuckoo_hash.c index 645c0cf..37a8110 100644 --- a/lib/librte_hash/rte_cuckoo_hash.c +++ b/lib

[dpdk-dev] [PATCH] ethdev: remove driver name from device private data

2017-05-26 Thread Ferruh Yigit
rte_driver->name has the driver name and all physical and virtual devices has access to it. Previously it was not possible for virtual ethernet devices to access rte_driver->name field (because eth_dev used to keep only pci_dev), and it was required to save driver name in the device private struct

[dpdk-dev] Adding a new pipeline type in IP_PIPELINE application

2017-05-26 Thread Nidhia Varghese
Hi all, I have included a new pipeline type (*.c, *.h, *_be.c, *_be.h files inside /dpdk/examples/ip_pipeline/pipeline folder). But while running a config file which uses this newly created pipeline type, its showing error. During debugging I found that app->n_pipeline_types still returns 6 (actua

[dpdk-dev] [PATCH 0/2] AESNI GCM PMD: Migration from ISA-L to Multi-buffer library

2017-05-26 Thread Pablo de Lara
AES-NI GCM PMD migrated previously from Multi-buffer Crypto library to ISA-L Crypto library, to support several features that were not supported by that time, such as GMAC algorithm and Scatter-gather list. Since version 0.45, Multi-buffer library (https://github.com/01org/intel-ipsec-mb) support

[dpdk-dev] [PATCH 1/2] crypto/aesni_gcm: migrate to Multi-buffer library

2017-05-26 Thread Pablo de Lara
Since Intel Multi Buffer library for IPSec has been updated to support Scatter Gather List, the AESNI GCM PMD can link to this library, instead of the ISA-L library. This move eases the maintainance of the driver, as it will use the same library as the AESNI MB PMD. It also adds support for 192-bi

[dpdk-dev] [PATCH 2/2] test/crypto: add AES GCM 192 tests

2017-05-26 Thread Pablo de Lara
Added AES GCM tests for 192-bit keys, now that AES GCM PMD supports it. Signed-off-by: Pablo de Lara --- test/test/test_cryptodev.c | 116 + test/test/test_cryptodev_gcm_test_vectors.h | 357 2 files changed, 473 insertions(+) diff --git a/t

  1   2   >