Re: [dpdk-dev] [PATCH v2 2/6] net/iavf: set speed to undefined for default case

2020-08-26 Thread Xing, Beilei
> -Original Message- > From: Yang, SteveX > Sent: Thursday, August 27, 2020 9:14 AM > To: dev@dpdk.org > Cc: Yang, Qiming ; Wu, Jingjing > ; Xing, Beilei ; Yang, SteveX > > Subject: [PATCH v2 2/6] net/iavf: set speed to undefined for default case > > During PF/VF link update, a defaul

[dpdk-dev] [PATCH v1] regex/mlx5: add teardown flow to fastpath buffers

2020-08-26 Thread Yuval Avnery
From: Yuval Avnery Added missing teardown flow to fastpath buffers, and fixed rollback code on control setup. Signed-off-by: Yuval Avnery Acked-by: Ori Kam --- drivers/regex/mlx5/mlx5_regex.h | 1 + drivers/regex/mlx5/mlx5_regex_control.c | 20 --- drivers/regex/mlx

Re: [dpdk-dev] [PATCH v2 1/6] net/iavf: fix scattered Rx enabling

2020-08-26 Thread Xing, Beilei
> -Original Message- > From: Yang, SteveX > Sent: Thursday, August 27, 2020 9:14 AM > To: dev@dpdk.org > Cc: Yang, Qiming ; Wu, Jingjing > ; Xing, Beilei ; Yang, SteveX > > Subject: [PATCH v2 1/6] net/iavf: fix scattered Rx enabling > > No need to add additional vlan tag size for max

Re: [dpdk-dev] [PATCH 1/1] vhost: fix iotlb mempool single-consumer flag

2020-08-26 Thread Xia, Chenbo
Hi Eugenio, > -Original Message- > From: Eugenio Perez Martin > Sent: Wednesday, August 26, 2020 8:51 PM > To: Xia, Chenbo > Cc: dev@dpdk.org; Adrian Moreno Zapata ; Maxime > Coquelin ; sta...@dpdk.org; Wang, Zhihong > > Subject: Re: [PATCH 1/1] vhost: fix iotlb mempool single-consumer

[dpdk-dev] [PATCH v2 3/6] net/iavf: fix port start during configuration restore

2020-08-26 Thread SteveX Yang
If configuring VF promiscuous mode is not supported, return -ENOTSUP error code in .promiscuous_enable/disable dev_ops. This is to fix the port start during configuration restore, where if .promiscuous_enable/disable dev_ops exists and return any value other than -ENOTSUP, start will fail. Same is

[dpdk-dev] [PATCH v2 6/6] net/iavf: downgrade error log

2020-08-26 Thread SteveX Yang
When receiving the unsupported AQ messages, it's taken as an error. It's not appropriate and triggers too much unnecessary print. Fixes: 22b123a36d07 ("net/avf: initialize PMD") Signed-off-by: SteveX Yang --- drivers/net/iavf/iavf_vchnl.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) d

[dpdk-dev] [PATCH v2 2/6] net/iavf: set speed to undefined for default case

2020-08-26 Thread SteveX Yang
During PF/VF link update, a default speed value of 100M will be set if get_link_info has failed or speed is unknown. Consequently if PF is put in no-carrier state, VFs will switch to "in carrier" state due to a link up + a link speed set to 100M (default value if no speed detected). To be consist

[dpdk-dev] [PATCH v2 5/6] net/iavf: fix multiple interrupts for VF

2020-08-26 Thread SteveX Yang
Interrupt mapping should be 1:n queue(s).This patch fixes the logic of interrupt bind by code reconstruction. Fixes: 69dd4c3d0898 ("net/avf: enable queue and device") Signed-off-by: SteveX Yang --- drivers/net/iavf/iavf_vchnl.c | 56 --- 1 file changed, 45 insert

[dpdk-dev] [PATCH v2 4/6] net/iavf: fix setting of MAC address on iavf

2020-08-26 Thread SteveX Yang
When setting the MAC address, the ethdev layer copies the new mac address in dev->data->mac_addrs[0] before calling the dev_ops. Therefore, is_same_ether_addr(mac_addr, dev->data->mac_addrs) was always true, and the MAC was never set. Remove this test to fix the issue. Fixes: 538da7a1cad2 ("net:

[dpdk-dev] [PATCH v2 0/6] These patches are bugs porting from i40evf to

2020-08-26 Thread SteveX Yang
v2: removed patch (net/iavf: fix port close), because all resources will be released in dev_close when RTE_ETH_DEV_CLOSE_REMOVE is set. SteveX Yang (6): net/iavf: fix scattered Rx enabling net/iavf: set speed to undefined for default case net/iavf: fix port start during configuration restore

[dpdk-dev] [PATCH v2 1/6] net/iavf: fix scattered Rx enabling

2020-08-26 Thread SteveX Yang
No need to add additional vlan tag size for max packet size, since for i40e, the queue's Rx Max Frame Size (rxq->max_pkt_len) already includes the vlan header size. Fixes: 69dd4c3d0898 ("net/avf: enable queue and device") Signed-off-by: SteveX Yang --- drivers/net/iavf/iavf_ethdev.c | 2 +- 1 f

[dpdk-dev] [PATCH v2 0/6] These patches are bugs porting from i40evf to

2020-08-26 Thread SteveX Yang
v2: removed patch (net/iavf: fix port close), because all resources will be released in dev_close when RTE_ETH_DEV_CLOSE_REMOVE is set. SteveX Yang (6): net/iavf: fix scattered Rx enabling net/iavf: set speed to undefined for default case net/iavf: fix port start during configuration restore

Re: [dpdk-dev] [PATCH V1] testpmd: add eeprom/module eeprom display

2020-08-26 Thread Ferruh Yigit
On 8/26/2020 8:00 PM, David Liu wrote: > Commands will dump the content of the EEPROM/module EEPROM for the > selected port. > > Signed-off-by: David Liu > --- > app/test-pmd/cmdline.c | 41 +++ > app/test-pmd/config.c | 112 + > app/test-pmd

Re: [dpdk-dev] [PATCH 0/6] app/testpmd: add runtime config

2020-08-26 Thread Ferruh Yigit
On 8/26/2020 6:07 PM, Dharmik Thakkar wrote: > > >> On Aug 26, 2020, at 11:41 AM, Bruce Richardson >> wrote: >> >> On Wed, Aug 26, 2020 at 05:33:20PM +0100, Ferruh Yigit wrote: >>> On 7/14/2020 10:51 PM, Dharmik Thakkar wrote: Meson build system lacks support for CONFIG_RTE_TEST_PMD_R

Re: [dpdk-dev] [PATCH 0/6] app/testpmd: add runtime config

2020-08-26 Thread Ferruh Yigit
On 8/26/2020 5:41 PM, Bruce Richardson wrote: > On Wed, Aug 26, 2020 at 05:33:20PM +0100, Ferruh Yigit wrote: >> On 7/14/2020 10:51 PM, Dharmik Thakkar wrote: >>> Meson build system lacks support for >>> CONFIG_RTE_TEST_PMD_RECORD_CORE_CYCLES and >>> CONFIG_RTE_TEST_PMD_RECORD_BURST_STATS configura

Re: [dpdk-dev] [PATCH v5 1/8] net/dpaa: add support for fmlib in dpdk

2020-08-26 Thread Ferruh Yigit
On 8/26/2020 6:06 PM, Hemant Agrawal wrote: > HI Ferruh, > >> -Original Message- >> From: Ferruh Yigit >> Sent: Wednesday, August 26, 2020 8:22 PM >> To: Hemant Agrawal ; dev@dpdk.org >> Subject: Re: [PATCH v5 1/8] net/dpaa: add support for fmlib in dpdk >> >> On 8/26/2020 2:54 PM, Ferruh

[dpdk-dev] [RFC] net/mlx5: Descriptor status for Vectorized and MPRQ Rx

2020-08-26 Thread Alexander Kozyrev
There are two APIs that allow getting more insights about Rx queue operations: - the rte_eth_rx_queue_count API gives the number of used descriptors. - the rte_eth_rx_descriptor_status API provides the status of a Rx descriptor. This information is available only for the regular Rx burst in the mlx

Re: [dpdk-dev] [PATCH v2 2/4] test/ring: fix wrong size used in memcmp

2020-08-26 Thread Honnappa Nagarahalli
> > When using memcmp function to check data, the third param should be the > size of all elements, rather than the number of the elements. > > Fixes: a9fe152363e2 ("test/ring: add custom element size functional tests") > Cc: honnappa.nagaraha...@arm.com > Cc: sta...@dpdk.org > > Signed-off-by

Re: [dpdk-dev] [PATCH v2 3/4] test/ring: fix the wrong number of enq/deq elements

2020-08-26 Thread Honnappa Nagarahalli
> Subject: [PATCH v2 3/4] test/ring: fix the wrong number of enq/deq elements > > The actual capacity of ring should be the (RING_SIZE - 1), thus only > (RING_SIZE > - 1) elements can be enqueued into the ring. > > Fixes: a9fe152363e2 ("test/ring: add custom element size functional tests") Thi

Re: [dpdk-dev] [PATCH v2 4/4] test/ring: add check to validate the dequeued objects

2020-08-26 Thread Honnappa Nagarahalli
Hi Feifei, Can you add this at the head of the series? It will help with proving that the test case fails and hence we need subsequent fixes. > -Original Message- > From: Feifei Wang > Sent: Wednesday, August 5, 2020 1:14 AM > To: Honnappa Nagarahalli ; Konstantin > Ananyev > Cc

[dpdk-dev] [PATCH V1] testpmd: add eeprom/module eeprom display

2020-08-26 Thread David Liu
Commands will dump the content of the EEPROM/module EEPROM for the selected port. Signed-off-by: David Liu --- app/test-pmd/cmdline.c | 41 +++ app/test-pmd/config.c | 112 + app/test-pmd/testpmd.h | 2 + 3 files changed, 155 insertions(+)

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

2020-08-26 Thread Lance Richardson
On Tue, Aug 25, 2020 at 10:39 AM Lance Richardson wrote: > > On Mon, Aug 24, 2020 at 4:11 PM Lance Richardson > wrote: > > > The IP header checksum status for the outer IP header should determine > > whether this flag is set in ol_flags: > > PKT_RX_EIP_CKSUM_BAD > > A simpler question might

Re: [dpdk-dev] [PATCH] app/testpmd: fix flow rules list after port stop

2020-08-26 Thread Ori Kam
Hi Ferruh, > -Original Message- > From: Ferruh Yigit > > On 8/20/2020 9:40 AM, Gregory Etelson wrote: > > Hello, > > > > Is this patch scheduled for merge with dpdk.org ? > > Please update me. > > > > Regards, > > Gregory > > > >> -Original Message- > >> From: Gregory Etelson >

Re: [dpdk-dev] [PATCH 0/6] app/testpmd: add runtime config

2020-08-26 Thread Dharmik Thakkar
> On Aug 26, 2020, at 11:41 AM, Bruce Richardson > wrote: > > On Wed, Aug 26, 2020 at 05:33:20PM +0100, Ferruh Yigit wrote: >> On 7/14/2020 10:51 PM, Dharmik Thakkar wrote: >>> Meson build system lacks support for >>> CONFIG_RTE_TEST_PMD_RECORD_CORE_CYCLES and >>> CONFIG_RTE_TEST_PMD_RECORD_BU

Re: [dpdk-dev] [PATCH v5 1/8] net/dpaa: add support for fmlib in dpdk

2020-08-26 Thread Hemant Agrawal
HI Ferruh, > -Original Message- > From: Ferruh Yigit > Sent: Wednesday, August 26, 2020 8:22 PM > To: Hemant Agrawal ; dev@dpdk.org > Subject: Re: [PATCH v5 1/8] net/dpaa: add support for fmlib in dpdk > > On 8/26/2020 2:54 PM, Ferruh Yigit wrote: > > On 8/13/2020 7:01 PM, Hemant Agrawal

Re: [dpdk-dev] [PATCH 40/40] examples/pipeline: add VXLAN encap example

2020-08-26 Thread Stephen Hemminger
On Wed, 26 Aug 2020 16:14:45 +0100 Cristian Dumitrescu wrote: > +/* > + * Packet headers. > + */ > +static struct rte_swx_field_params ethernet_h[] = { > + {"dst_addr", 48}, > + {"src_addr", 48}, > + {"ether_type", 16}, > +}; > + Could these tables be made const? Looks like read-only

Re: [dpdk-dev] [PATCH 0/6] app/testpmd: add runtime config

2020-08-26 Thread Bruce Richardson
On Wed, Aug 26, 2020 at 05:33:20PM +0100, Ferruh Yigit wrote: > On 7/14/2020 10:51 PM, Dharmik Thakkar wrote: > > Meson build system lacks support for > > CONFIG_RTE_TEST_PMD_RECORD_CORE_CYCLES and > > CONFIG_RTE_TEST_PMD_RECORD_BURST_STATS configuration options. > > > > One solution is to add the

Re: [dpdk-dev] [PATCH 0/6] app/testpmd: add runtime config

2020-08-26 Thread Ferruh Yigit
On 7/14/2020 10:51 PM, Dharmik Thakkar wrote: > Meson build system lacks support for > CONFIG_RTE_TEST_PMD_RECORD_CORE_CYCLES and > CONFIG_RTE_TEST_PMD_RECORD_BURST_STATS configuration options. > > One solution is to add these options within meson_options.txt > > Since adding these as runtime con

[dpdk-dev] [PATCH v4 4/7] net/mlx5: add the validate sample action

2020-08-26 Thread Jiawei Wang
Add sample action validate function. For Sample flow support NIC-RX and FDB domain, must include an action of a dest TIR in NIC_RX. Only NIC_RX support with addition optional actions. FDB doesn't support any optional action, the sampled packets is always goes to e-switch manager port. Signed-off

[dpdk-dev] [PATCH v4 5/7] net/mlx5: split sample flow into two sub flows

2020-08-26 Thread Jiawei Wang
Add the sampler action resource structs definition. The flow with sample action will be splited into two sub flows, the prefix flow with sample action, the suffix flow with the left actions. For the prefix flow, add the extra the tag action with unique id to metadata register, and suffix flow wil

[dpdk-dev] [PATCH v4 6/7] net/mlx5: update translate function for sample action

2020-08-26 Thread Jiawei Wang
Translate the attribute of sample action that include sample ratio and sub actions list, then create the sample DR action. Signed-off-by: Jiawei Wang Acked-by: Ori Kam --- drivers/net/mlx5/mlx5_flow.c| 16 +- drivers/net/mlx5/mlx5_flow.h| 14 +- drivers/net/mlx5/mlx5_flow_dv.c | 494 +

[dpdk-dev] [PATCH v4 1/7] ethdev: introduce sample action for rte flow

2020-08-26 Thread Jiawei Wang
When using full offload, all traffic will be handled by the HW, and directed to the requested VF or wire, the control application loses visibility on the traffic. So there's a need for an action that will enable the control application some visibility. The solution is introduced a new action that

[dpdk-dev] [PATCH v4 2/7] common/mlx5: glue for sample action

2020-08-26 Thread Jiawei Wang
rdma-core introduce a new DR sample action. Add the rdma-core commands in glue to create this action. Sample action is used for creating the sample object to implement the sampling/mirroring function. Signed-off-by: Jiawei Wang Acked-by: Ori Kam --- drivers/common/mlx5/Makefile | 5

[dpdk-dev] [PATCH v4 3/7] common/mlx5: query sampler object capability via DevX

2020-08-26 Thread Jiawei Wang
Update function mlx5_devx_cmd_query_hca_attr() to add the NIC Flow Table attributes query, then get the log_max_flow_sampler_num from flow table properties. Add the related structs definition in mlx5_prm.h. Signed-off-by: Jiawei Wang Acked-by: Ori Kam --- drivers/common/mlx5/mlx5_devx_cmds.c |

[dpdk-dev] [PATCH v4 7/7] app/testpmd: add testpmd command for sample action

2020-08-26 Thread Jiawei Wang
Add a new testpmd command 'set sample_actions' that supports the multiple sample actions list configuration by using the index: set sample_actions The examples for the sample flow use case and result as below: 1. set sample_actions 0 mark id 0x8 / queue index 2 / end .. pattern eth / end action

[dpdk-dev] [PATCH v4 0/7] support the flow-based traffic sampling

2020-08-26 Thread Jiawei Wang
This patch set implement the flow sampling for mlx5 driver. The solution is introduced a new rte_flow action that will sample the incoming traffic and send a duplicated traffic with the specified ratio to the application, while the original packet will continue to the target destination. If the

Re: [dpdk-dev] [PATCH v2 08/18] raw/ioat: create rawdev instances on idxd PCI probe

2020-08-26 Thread Bruce Richardson
On Tue, Aug 25, 2020 at 04:27:43PM +0100, Laatz, Kevin wrote: > On 21/08/2020 17:29, Bruce Richardson wrote: > > When a matching device is found via PCI probe create a rawdev instance for > > each queue on the hardware. Use empty self-test function for these devices > > so that the overall rawdev_a

Re: [dpdk-dev] [PATCH v5] devtools: add new SPDX license compliance checker

2020-08-26 Thread Bruce Richardson
On Wed, Aug 26, 2020 at 08:12:30AM -0700, Stephen Hemminger wrote: > On Fri, 31 Jul 2020 00:06:23 +0200 > Thomas Monjalon wrote: > > > 15/07/2020 01:21, Stephen Hemminger: > > > Simple script to look for drivers and scripts that > > > are missing requires SPDX header. > > > > > > Signed-off-by:

[dpdk-dev] [PATCH] crypto/scheduler: rename slave to worker

2020-08-26 Thread Adam Dybkowski
This patch replaces the usage of the word 'slave' with more appropriate word 'worker' in QAT PMD and Scheduler PMD as well as in their docs. Also the test app was modified to use the new wording. The Scheduler PMD's public API was modified according to the previous deprecation notice: rte_cryptode

[dpdk-dev] [PATCH 1/2] net/ark: remove compile time log macros in favor of run time log control

2020-08-26 Thread Ed Czeck
Use ARK_PMD_LOG in place of PMD_DRV_LOG, PMD_DEBUG_LOG, PMD_FUNC_LOG, PMD_STATS_LOG, PMD_RX_LOG, and PMD_TX_LOG. Review and adjust log levels and messages as needed. Signed-off-by: Ed Czeck --- doc/guides/nics/ark.rst | 13 -- drivers/net/ark/ark_ddm.c | 12 ++--- drivers/net/a

[dpdk-dev] [PATCH 2/2] net/ark: remove RTE_LIBRTE_ARK_PAD_TX configuration macro

2020-08-26 Thread Ed Czeck
Replace behavior with RTE_LIBRTE_ARK_MIN_TX_PKTLEN with a default value of 0. Update documentation as needed. Signed-off-by: Ed Czeck --- doc/guides/nics/ark.rst | 16 drivers/net/ark/ark_ethdev_tx.c | 44 +++-- drivers/net/ark/ark_logs.h |

[dpdk-dev] [PATCH 40/40] examples/pipeline: add VXLAN encap example

2020-08-26 Thread Cristian Dumitrescu
Add VXLAN encapsulation example to the pipeline application. The VXLAN tunnels can be generated with the vxlan.py script. Example command line: ./build/pipeline -l0-1 -- -s ./examples/vxlan.cli Signed-off-by: Cristian Dumitrescu --- examples/pipeline/Makefile| 2 +- examples/pi

[dpdk-dev] [PATCH 38/40] examples/pipeline: add l2fwd example

2020-08-26 Thread Cristian Dumitrescu
Add L2 Forwarding example to the pipeline application. Example command line: ./build/pipeline -l0-1 -- -s ./examples/l2fwd.cli Signed-off-by: Cristian Dumitrescu --- examples/pipeline/Makefile| 1 + examples/pipeline/cli.c | 16 ++- examples/pipeline/example_

[dpdk-dev] [PATCH 39/40] examples/pipeline: add l2fwd with MAC swap example

2020-08-26 Thread Cristian Dumitrescu
Add L2 Forwarding example with MAC destination and source address swap to the pipeline application. Example command line: ./build/pipeline -l0-1 -- -s ./examples/l2fwd_macswp.cli Signed-off-by: Cristian Dumitrescu --- examples/pipeline/Makefile| 2 + examples/pipeline/cli.c

[dpdk-dev] [PATCH 36/40] examples/pipeline: add message passing mechanism

2020-08-26 Thread Cristian Dumitrescu
Add network-based connectivity mechanism for the application to allow for the exchange of configuration messages through the network as opposed to local CLI only. Signed-off-by: Cristian Dumitrescu --- examples/pipeline/Makefile| 1 + examples/pipeline/conn.c | 331 +++

[dpdk-dev] [PATCH 37/40] examples/pipeline: add configuration commands

2020-08-26 Thread Cristian Dumitrescu
Add CLI commands for application configuration and query. Signed-off-by: Cristian Dumitrescu --- examples/pipeline/Makefile|1 + examples/pipeline/cli.c | 1373 + examples/pipeline/cli.h | 19 + examples/pipeline/main.c | 11 +- exampl

[dpdk-dev] [PATCH 35/40] examples/pipeline: add new example application

2020-08-26 Thread Cristian Dumitrescu
Add new example application to showcase the new pipeline type API. Signed-off-by: Cristian Dumitrescu --- examples/Makefile | 1 + examples/meson.build | 1 + examples/pipeline/Makefile| 80 + examples/pipeline/main.c | 52 examples/pipeline/meson.bui

[dpdk-dev] [PATCH 32/40] port: add ethernet device port

2020-08-26 Thread Cristian Dumitrescu
Add the Ethernet device input/output pipeline port type. Used under the hood by the pipeline rx and tx instructions. Signed-off-by: Cristian Dumitrescu --- lib/librte_port/Makefile | 2 + lib/librte_port/meson.build | 6 +- lib/librte_port/rte_port_version.map | 3 +

[dpdk-dev] [PATCH 34/40] table: add exact match table

2020-08-26 Thread Cristian Dumitrescu
Add the exact match pipeline table type. Used under the hood by the pipeline table instruction. Signed-off-by: Cristian Dumitrescu --- lib/librte_table/Makefile | 2 + lib/librte_table/meson.build | 6 +- lib/librte_table/rte_swx_table_em.c| 851 +++

[dpdk-dev] [PATCH 33/40] port: add source and sink ports

2020-08-26 Thread Cristian Dumitrescu
Add the PCAP file-based source (input) and sink (output) pipeline port types. The sink port is typically used to implement the packet drop pipeline action. Used under the hood by the pipeline rx and tx instructions. Signed-off-by: Cristian Dumitrescu --- lib/librte_port/Makefile

[dpdk-dev] [PATCH 31/40] pipeline: add table update high level API

2020-08-26 Thread Cristian Dumitrescu
High-level transaction-oriented API for pipeline table updates. It supports multi-table atomic updates, i.e. multiple tables can be updated in a single step with only the before and after table set visible to the packets. Uses the lower-level table update mechanisms. Signed-off-by: Cristian Dumitr

[dpdk-dev] [PATCH 28/40] pipeline: add pipeline query API

2020-08-26 Thread Cristian Dumitrescu
Query API to be used by the control plane to detect the configuration and state of the pipeline and its internal objects. Signed-off-by: Cristian Dumitrescu --- lib/librte_pipeline/rte_pipeline_version.map | 10 + lib/librte_pipeline/rte_swx_ctl.h| 313 +++ lib/librt

[dpdk-dev] [PATCH 30/40] pipeline: add instruction description

2020-08-26 Thread Cristian Dumitrescu
Added instruction set reference table. Signed-off-by: Cristian Dumitrescu --- lib/librte_pipeline/rte_swx_pipeline.h | 109 + 1 file changed, 109 insertions(+) diff --git a/lib/librte_pipeline/rte_swx_pipeline.h b/lib/librte_pipeline/rte_swx_pipeline.h index 203e394d6..

[dpdk-dev] [PATCH 29/40] pipeline: add pipeline flush

2020-08-26 Thread Cristian Dumitrescu
Flush the packets currently buffered by the pipeline output ports. Signed-off-by: Cristian Dumitrescu --- lib/librte_pipeline/rte_pipeline_version.map | 1 + lib/librte_pipeline/rte_swx_pipeline.c | 13 + lib/librte_pipeline/rte_swx_pipeline.h | 12 3 files

[dpdk-dev] [PATCH 27/40] pipeline: add instruction optimizer

2020-08-26 Thread Cristian Dumitrescu
Instruction optimizer. Detects frequent patterns and replaces them with some more powerful vector-like pipeline instructions without any user effort. Executes at instruction translation, not at run-time. Signed-off-by: Cristian Dumitrescu --- lib/librte_pipeline/rte_swx_pipeline.c | 226

[dpdk-dev] [PATCH 26/40] pipeline: add instruction verifier

2020-08-26 Thread Cristian Dumitrescu
Instruction verifier. Executes at instruction translation time during pipeline build, i.e. initialization instead of run-time. Signed-off-by: Cristian Dumitrescu --- lib/librte_pipeline/rte_swx_pipeline.c | 51 ++ 1 file changed, 51 insertions(+) diff --git a/lib/librte_

[dpdk-dev] [PATCH 25/40] pipeline: introduce jmp and return instructions

2020-08-26 Thread Cristian Dumitrescu
The jump instructions are either unconditional (jmp) or conditional on positive/negative tests such as header validity (jmpv/jmpnv), table lookup hit/miss (jmph/jmpnh), executed action (jmpa/jmpna), equality (jmpeq/jmpneq), comparison result (jmplt/jmpgt). The return instruction resumes the pipelin

[dpdk-dev] [PATCH 23/40] pipeline: introduce table instruction

2020-08-26 Thread Cristian Dumitrescu
The table instruction looks up the input key into the table and then it triggers the execution of the action found in the table entry. On lookup miss, the default table action is executed. Signed-off-by: Cristian Dumitrescu --- lib/librte_pipeline/rte_swx_pipeline.c | 100 +++

[dpdk-dev] [PATCH 24/40] pipeline: introduce extern instruction

2020-08-26 Thread Cristian Dumitrescu
The extern instruction calls one of the member functions of a given extern object or it calls the given extern function. The function arguments must be written in advance in the maibox. The results are available in the same place after execution. Signed-off-by: Cristian Dumitrescu --- lib/librte

[dpdk-dev] [PATCH 21/40] pipeline: introduce shl instruction

2020-08-26 Thread Cristian Dumitrescu
The shl (i.e. shift left) instruction source can be header field (H), meta-data field (M), extern object (E) or function (F) mailbox field, table entry action data field (T) or immediate value (I). The destination is HMEF. Signed-off-by: Cristian Dumitrescu --- lib/librte_pipeline/rte_swx_pipeli

[dpdk-dev] [PATCH 22/40] pipeline: introduce shr instruction

2020-08-26 Thread Cristian Dumitrescu
The shr (i.e. shift right) instruction source can be header field (H), meta-data field (M), extern object (E) or function (F) mailbox field, table entry action data field (T) or immediate value (I). The destination is HMEF. Signed-off-by: Cristian Dumitrescu --- lib/librte_pipeline/rte_swx_pipel

[dpdk-dev] [PATCH 20/40] pipeline: introduce xor instruction

2020-08-26 Thread Cristian Dumitrescu
The xor (i.e. bitwise exclusive or) instruction source can be header field (H), meta-data field (M), extern object (E) or function (F) mailbox field, table entry action data field (T) or immediate value (I). The destination is HMEF. Signed-off-by: Cristian Dumitrescu --- lib/librte_pipeline/rte_

[dpdk-dev] [PATCH 19/40] pipeline: introduce or instruction

2020-08-26 Thread Cristian Dumitrescu
The or (i.e. bitwise or) instruction source can be header field (H), meta-data field (M), extern object (E) or function (F) mailbox field, table entry action data field (T) or immediate value (I). The destination is HMEF. Signed-off-by: Cristian Dumitrescu --- lib/librte_pipeline/rte_swx_pipelin

[dpdk-dev] [PATCH 17/40] pipeline: introduce cksub instruction

2020-08-26 Thread Cristian Dumitrescu
The cksub (i.e. checksum subtract) instruction is used to update the 1's complement sum commonly used by protocols such as IPv4, TCP or UDP. Signed-off-by: Cristian Dumitrescu --- lib/librte_pipeline/rte_swx_pipeline.c | 116 + 1 file changed, 116 insertions(+) diff --gi

[dpdk-dev] [PATCH 15/40] pipeline: introduce sub instruction

2020-08-26 Thread Cristian Dumitrescu
The sub (i.e. subtract) instruction source can be header field (H), meta-data field (M), extern object (E) or function (F) mailbox field, table entry action data field (T) or immediate value (I). The destination is HMEF. Signed-off-by: Cristian Dumitrescu --- lib/librte_pipeline/rte_swx_pipeline

[dpdk-dev] [PATCH 16/40] pipeline: introduce ckadd instruction

2020-08-26 Thread Cristian Dumitrescu
The ckadd (i.e. checksum add) instruction is used to either compute, verify or update the 1's complement sum commonly used by protocols such as IPv4, TCP or UDP. Signed-off-by: Cristian Dumitrescu --- lib/librte_pipeline/rte_swx_pipeline.c | 230 + 1 file changed, 230 ins

[dpdk-dev] [PATCH 18/40] pipeline: introduce and instruction

2020-08-26 Thread Cristian Dumitrescu
The and (i.e. bitwise and) instruction source can be header field (H), meta-data field (M), extern object (E) or function (F) mailbox field, table entry action data field (T) or immediate value (I). The destination is HMEF. Signed-off-by: Cristian Dumitrescu --- lib/librte_pipeline/rte_swx_pipel

[dpdk-dev] [PATCH 12/40] pipeline: add mov instruction

2020-08-26 Thread Cristian Dumitrescu
The mov (i.e. move) instruction source can be header field (H), meta-data field (M), extern object (E) or function (F) mailbox field, table entry action data field (T) or immediate value (I). The destination is HMEF. Signed-off-by: Cristian Dumitrescu --- lib/librte_pipeline/rte_swx_pipeline.c |

[dpdk-dev] [PATCH 14/40] pipeline: introduce add instruction

2020-08-26 Thread Cristian Dumitrescu
The add instruction source can be header field (H), meta-data field (M), extern object (E) or function (F) mailbox field, table entry action data field (T) or immediate value (I). The destination is HMEF. Signed-off-by: Cristian Dumitrescu --- lib/librte_pipeline/rte_swx_pipeline.c | 302 +++

[dpdk-dev] [PATCH 11/40] pipeline: add header validate and invalidate instructions

2020-08-26 Thread Cristian Dumitrescu
Add instructions to flag a header as valid or invalid. This flag can be tested by the jmpv (jump if header valid) and jmpnv (jump if header not valid) instructions. Signed-off-by: Cristian Dumitrescu --- lib/librte_pipeline/rte_swx_pipeline.c | 108 + 1 file changed, 108

[dpdk-dev] [PATCH 07/40] pipeline: add tables

2020-08-26 Thread Cristian Dumitrescu
Add tables to the pipeline. The match fields are flexibly selected from the headers and meta-data. The set of actions is flexibly selected per table from the pipeline set. Signed-off-by: Cristian Dumitrescu --- lib/librte_pipeline/Makefile | 1 + lib/librte_pipeline/meson.build

[dpdk-dev] [PATCH 13/40] pipeline: add dma instruction

2020-08-26 Thread Cristian Dumitrescu
The DMA instruction handles the bulk read transfer of one header from the table entry action data. Typically used to generate headers, i.e. headers that are not extracted from the input packet. Signed-off-by: Cristian Dumitrescu --- lib/librte_pipeline/rte_swx_pipeline.c | 207 ++

[dpdk-dev] [PATCH 10/40] pipeline: add tx and emit instructions

2020-08-26 Thread Cristian Dumitrescu
Add header emit and packet transmission instructions. Emit adds to the output packet a header that is either generated (e.g. read from table entry by action) or extracted from the input packet. TX ends the pipeline processing; discard is implemented by tx to special port. Signed-off-by: Cristian D

[dpdk-dev] [PATCH 09/40] pipeline: add rx and extract instructions

2020-08-26 Thread Cristian Dumitrescu
Add packet reception and header extraction instructions. The RX must be the first pipeline instruction. Each extracted header is logically removed from the packet, then it can be read/written by instructions, emitted into the outgoing packet or discarded. Signed-off-by: Cristian Dumitrescu --- l

[dpdk-dev] [PATCH 08/40] pipeline: add pipeline instructions

2020-08-26 Thread Cristian Dumitrescu
The pipeline instructions represent the main program that defines the life of the packet. As packets go through tables that trigger action subroutines, the headers and meta-data get transformed along the way. Signed-off-by: Cristian Dumitrescu --- lib/librte_pipeline/rte_pipeline_version.map |

[dpdk-dev] [PATCH 06/40] pipeline: add action

2020-08-26 Thread Cristian Dumitrescu
Add actions that are dynamically-defined through instructions as opposed to pre-defined. The actions are subroutines of the pipeline program that triggered by table lookup. The input arguments are the action data from the table entry (format defined by struct), the headers and meta-data are in/out.

[dpdk-dev] [PATCH 05/40] pipeline: add extern objects and functions

2020-08-26 Thread Cristian Dumitrescu
Add extern objects and functions to plug in functions that cannot be efficiently implemented with existing instructions, e.g. special checksum/ECC, crypto, meters, stats arrays, heuristics, etc. In/out arguments are passed through mailbox with format defined by struct. Signed-off-by: Cristian Dumi

[dpdk-dev] [PATCH 04/40] pipeline: add headers and meta-data

2020-08-26 Thread Cristian Dumitrescu
Add support for dynamically-defined packet headers and meta-data. The header and meta-data format are defined by the struct type they instantiate. Signed-off-by: Cristian Dumitrescu --- lib/librte_pipeline/rte_pipeline_version.map | 3 + lib/librte_pipeline/rte_swx_pipeline.c | 413 +

[dpdk-dev] [PATCH 03/40] pipeline: add output port

2020-08-26 Thread Cristian Dumitrescu
Add output ports to the pipeline. Each port instantiates a port type that defines the port operations, e.g. ethdev port, PCAP port, etc. The TX interface is single packet, with packet batching internally for performance. Signed-off-by: Cristian Dumitrescu --- lib/librte_pipeline/rte_pipeline_ver

[dpdk-dev] [PATCH 02/40] pipeline: add input port

2020-08-26 Thread Cristian Dumitrescu
Add input ports to the pipeline. Each port instantiates a port type that defines the port operations, e.g. ethdev port, PCAP port, etc. The RX interface is single packet, with packet batching internally for performance. Signed-off-by: Cristian Dumitrescu --- lib/librte_pipeline/rte_pipeline_vers

[dpdk-dev] [PATCH 00/40] Pipeline alignment with the P4 language

2020-08-26 Thread Cristian Dumitrescu
This patch set introduces a new pipeline type that combines the DPDK performance with the flexibility of the P4-16 language[1]. The new API can be used either by itself to code a complete software switch (SWX) or data plane app, or in combination with the open-source P4 compiler P4C [2], potentiall

[dpdk-dev] [PATCH 01/40] pipeline: add pipeline

2020-08-26 Thread Cristian Dumitrescu
Add improved pipeline type that supports dynamically-defined packet headers, meta-data, actions and pipelines. Actions and pipelines are defined through instructions. Signed-off-by: Cristian Dumitrescu --- lib/librte_pipeline/Makefile | 2 + lib/librte_pipeline/meson.build

Re: [dpdk-dev] [PATCH v5] devtools: add new SPDX license compliance checker

2020-08-26 Thread Stephen Hemminger
On Fri, 31 Jul 2020 00:06:23 +0200 Thomas Monjalon wrote: > 15/07/2020 01:21, Stephen Hemminger: > > Simple script to look for drivers and scripts that > > are missing requires SPDX header. > > > > Signed-off-by: Stephen Hemminger > [...] > > +#! /bin/sh > > +# SPDX-License-Identifier: BSD-3-

Re: [dpdk-dev] [PATCH] test/crypto: fix device number

2020-08-26 Thread Zhang, Roy Fan
> -Original Message- > From: dev On Behalf Of Ankur Dwivedi > Sent: Thursday, July 30, 2020 12:20 PM > To: dev@dpdk.org > Cc: Doherty, Declan ; akhil.go...@nxp.com; > ano...@marvell.com; Ankur Dwivedi ; > sta...@dpdk.org > Subject: [dpdk-dev] [PATCH] test/crypto: fix device number > > In

Re: [dpdk-dev] [PATCH v5 1/8] net/dpaa: add support for fmlib in dpdk

2020-08-26 Thread Ferruh Yigit
On 8/26/2020 2:54 PM, Ferruh Yigit wrote: > On 8/13/2020 7:01 PM, Hemant Agrawal wrote: >> DPAA platorm MAC interface is known as FMAN i.e. Frame Manager. >> There are two ways to control it. >> 1. Statically configure the queues and classification rules before the >> start of the application using

Re: [dpdk-dev] [PATCH v2 2/3] app/testpmd: add Rx buffer size display in queue info query

2020-08-26 Thread Stephen Hemminger
On Wed, 26 Aug 2020 15:12:22 +0800 Chengchang Tang wrote: > Add Rx buffer size to queue info querry cmd so that the user can get the > buffer length used by HW queue for receiving packets. > > Signed-off-by: Chengchang Tang You might want to add this info to proc-info tool as well.

Re: [dpdk-dev] [PATCH v5 1/8] net/dpaa: add support for fmlib in dpdk

2020-08-26 Thread Ferruh Yigit
On 8/13/2020 7:01 PM, Hemant Agrawal wrote: > DPAA platorm MAC interface is known as FMAN i.e. Frame Manager. > There are two ways to control it. > 1. Statically configure the queues and classification rules before the > start of the application using FMC tool. > 2. Dynamically configure it within

[dpdk-dev] [PATCH] event/dpaa2: fix dereference before null check

2020-08-26 Thread wangyunjian
From: Yunjian Wang Coverity flags that 'portal' variable is used before it's checked for NULL. This patch fixes this issue. Coverity issue: 323516 Fixes: 4ab57b042e7c ("event/dpaa2: affine portal at runtime during I/O") Cc: sta...@dpdk.org Signed-off-by: Yunjian Wang --- drivers/event/dpaa2/d

Re: [dpdk-dev] [PATCH 1/1] vhost: fix iotlb mempool single-consumer flag

2020-08-26 Thread Eugenio Perez Martin
Hi Chenbo. On Wed, Aug 26, 2020 at 8:29 AM Xia, Chenbo wrote: > > Hi Eugenio, > > > -Original Message- > > From: Eugenio Pérez > > Sent: Monday, August 10, 2020 10:11 PM > > To: dev@dpdk.org > > Cc: Adrian Moreno Zapata ; Maxime Coquelin > > ; sta...@dpdk.org; Wang, Zhihong > > ; Xia, Ch

Re: [dpdk-dev] [PATCH] bus/dpaa: fix fd check before close

2020-08-26 Thread Sachin Saxena (OSS)
Thanks Yunjian for the fix. Acked-by: Sachin Saxena On 26-Aug-20 5:24 PM, wangyunjian wrote: From: Yunjian Wang The fd is possibly a negative value while it is passed as an argument to function "close". Fix the check to the fd. Fixes: b9c94167904f ("bus/dpaa: decouple FQ portal alloc and in

[dpdk-dev] [PATCH] bus/dpaa: fix fd check before close

2020-08-26 Thread wangyunjian
From: Yunjian Wang The fd is possibly a negative value while it is passed as an argument to function "close". Fix the check to the fd. Fixes: b9c94167904f ("bus/dpaa: decouple FQ portal alloc and init") Cc: sta...@dpdk.org Signed-off-by: Yunjian Wang --- drivers/bus/dpaa/base/qbman/qman_drive

[dpdk-dev] [PATCH] i40e: fix segfault when using custom RSS key

2020-08-26 Thread Elena Carasec
&out->conf and in can point to the same memory area. Reinitialization of out->conf leads to setting in->key to NULL, but leaves key_len 40. This leads to segfault on destruction of the RSS flow action. The segfault happens inside i40e_action_rss_same(), when comparing comp->key and with->key, becau

Re: [dpdk-dev] Ipsec-secgw packet processing

2020-08-26 Thread satyavalli rama
Hi Anoob, Do you need any more info.. Kindly help us.. We are totally stuck.. Thanks On Wed, 19 Aug, 2020, 4:38 pm satyavalli rama, wrote: > Hi Anoob > > We are using the following hardware details, > HOST: x722 (i40e) intel. > VM: e1000 (82540) intel. > > We have launched Virtual machine on hos

[dpdk-dev] [PATCH] net/octeontx2: remove logically dead code

2020-08-26 Thread wangyunjian
From: Yunjian Wang Coverity issue: 357719 Fixes: da138cd47e06 ("net/octeontx2: handle port reconfigure") Cc: sta...@dpdk.org Signed-off-by: Yunjian Wang --- drivers/net/octeontx2/otx2_ethdev.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/drivers/net/octeontx2/otx2_ethdev.c b/drivers/n

Re: [dpdk-dev] [PATCH 1/1] eal/linux: fix event set error for rte_epoll_event

2020-08-26 Thread wangyunjian
Ping for review, please. > -Original Message- > From: wangyunjian > Sent: Wednesday, July 15, 2020 10:40 AM > To: dev@dpdk.org; hka...@marvell.com > Cc: Lilijun (Jerry) ; xudingke > ; wangyunjian ; > sta...@dpdk.org > Subject: [dpdk-dev] [PATCH 1/1] eal/linux: fix event set error for > rt

Re: [dpdk-dev] [PATCH] librte_eal: fix mcslock hang on weak memory

2020-08-26 Thread Phil Yang
Diogo Behrens writes: > Subject: [PATCH] librte_eal: fix mcslock hang on weak memory > > The initialization me->locked=1 in lock() must happen before > next->locked=0 in unlock(), otherwise a thread may hang forever, > waiting me->locked become 0. On weak memory systems (such as ARMv

Re: [dpdk-dev] [PATCH] examples/vm_power: fix resource leak on error path

2020-08-26 Thread David Hunt
Hi wangyunjian, On 19/8/2020 1:54 PM, wangyunjian wrote: From: Yunjian Wang This patch fixes the resource leaks reported by coverity. Coverity issue: 337674 Fixes: 95f648ff9eed ("examples/vm_power: make branch ratio threshold per core") Cc: sta...@dpdk.org Signed-off-by: Yunjian Wang ---

Re: [dpdk-dev] [PATCH v2 2/4] examples/vm_power_manager: fix string truncation warning

2020-08-26 Thread David Hunt
Hi Bruce, On 21/8/2020 6:10 PM, Bruce Richardson wrote: When compiling on ubuntu 20.04, a warning was issued about possible truncation of the path string for the power management socket. channel_manager.c: In function ‘add_all_channels’: channel_manager.c:470:41: warning: ‘%s’ directive output

Re: [dpdk-dev] [PATCH v2 1/4] power: make guest channel headers public

2020-08-26 Thread David Hunt
Hi Bruce, On 21/8/2020 6:10 PM, Bruce Richardson wrote: The channel commands header file contains definitions that are used by the example application for power management, and so need to be made public. Similarly the guest_channel.h header is used by the guest_cli example utility, so needs to b

[dpdk-dev] [PATCH v11 2/5] net/i40e: use WC store to update queue tail registers

2020-08-26 Thread Radu Nicolau
Performance improvement: use a write combining store instead of a regular mmio write to update queue tail registers. Signed-off-by: Radu Nicolau Acked-by: Bruce Richardson --- drivers/net/i40e/base/i40e_osdep.h| 5 + drivers/net/i40e/i40e_rxtx.c | 8 drivers/net/i40e/i

  1   2   >