[dpdk-dev] [PATCH v6 4/5] vhost: unify message handling function signature

2018-09-24 Thread Nikolay Nikolaev
Each vhost-user message handling function will return an int result which is described in the new enum vh_result: error, OK and reply. All functions will now have two arguments, virtio_net double pointer and VhostUserMsg pointer. Signed-off-by: Nikolay Nikolaev --- lib/librte_vhost/vhost_user.c

[dpdk-dev] [PATCH v6 5/5] vhost: message handling implemented as a callback array

2018-09-24 Thread Nikolay Nikolaev
Introduce vhost_message_handlers, which maps the message request type to the message handler. Then replace the switch construct with a map and call. Failing vhost_user_set_features is fatal and all processing should stop immediately and propagate the error to the upper layers. Change the code acco

[dpdk-dev] [PATCH v6 1/5] vhost: unify struct VhostUserMsg usage

2018-09-24 Thread Nikolay Nikolaev
Do not use the typedef version of struct VhostUserMsg. Also unify the related parameter name. Signed-off-by: Nikolay Nikolaev --- lib/librte_vhost/vhost_user.c | 41 + 1 file changed, 21 insertions(+), 20 deletions(-) diff --git a/lib/librte_vhost/vhost

[dpdk-dev] [PATCH v6 2/5] vhost: make message handling functions prepare the reply

2018-09-24 Thread Nikolay Nikolaev
As VhostUserMsg structure is reused to generate the reply, move the relevant fields update into the respective message handling functions. Signed-off-by: Nikolay Nikolaev --- lib/librte_vhost/vhost_user.c | 24 1 file changed, 16 insertions(+), 8 deletions(-) diff --g

[dpdk-dev] [PATCH v6 3/5] vhost: handle unsupported message types in functions

2018-09-24 Thread Nikolay Nikolaev
Add new functions to handle the unsupported vhost message types: - vhost_user_set_vring_err - vhost_user_set_log_fd Signed-off-by: Nikolay Nikolaev --- lib/librte_vhost/vhost_user.c | 22 +- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/lib/librte_vhost/v

Re: [dpdk-dev] [PATCH v2 2/2] eal: force IOVA to particular mode

2018-09-24 Thread Zhang, Qing Long (Eric)
Hi Santosh/Anatoly, Any comments on the v2 patch which uses EAL option to let user configure iova mode as suggested? Thanks Eric -Original Message- From: dev [mailto:dev-boun...@dpdk.org] On Behalf Of eric zhang Sent: Tuesday, September 18, 2018 3:10 PM To: anatoly.bura...@intel.com; sa

[dpdk-dev] [PATCH v3 01/11] net/mlx5: split flow validation to dedicated function

2018-09-24 Thread Yongseok Koh
From: Ori Kam In current implementation the validation logic reside in the same function that calculates the size of the verbs spec and also create the verbs spec. This approach results in hard to maintain code which can't be shared. also in current logic there is a use of parser entity that hold

[dpdk-dev] [PATCH v3 00/11] net/mlx5: add Direct Verbs flow driver support

2018-09-24 Thread Yongseok Koh
RFC: https://mails.dpdk.org/archives/dev/2018-August/109950.html v3: * fix clang compilation error. v2: * make changes for the newly introduced meson build. Ori Kam (11): net/mlx5: split flow validation to dedicated function net/mlx5: add flow prepare function net/mlx5: add flow tr

[dpdk-dev] [PATCH v3 02/11] net/mlx5: add flow prepare function

2018-09-24 Thread Yongseok Koh
From: Ori Kam In current implementation the calculation of the flow size is done during the validation stage, and the same function is also used to translate the input parameters into verbs spec. This is hard to maintain and error prone. Another issue is that dev-flows (flows that are created imp

[dpdk-dev] [PATCH v3 03/11] net/mlx5: add flow translate function

2018-09-24 Thread Yongseok Koh
From: Ori Kam This commit modify the conversion of the input parameters into Verbs spec, in order to support all previous changes. Some of those changes are: removing the use of the parser, storing each flow in its own flow structure. Signed-off-by: Ori Kam Acked-by: Yongseok Koh --- drivers/

[dpdk-dev] [PATCH v3 05/11] net/mlx5: add Direct Verbs validation function

2018-09-24 Thread Yongseok Koh
From: Ori Kam This is commit introduce the Direct Verbs driver API. The Direct Verbs is an API adds new features like encapsulation, match on metatdata. In this commit the validation function was added, most of the validation is done with functions that are also in use for the Verbs API. Signed-

[dpdk-dev] [PATCH v3 06/11] net/mlx5: add Direct Verbs prepare function

2018-09-24 Thread Yongseok Koh
From: Ori Kam This function allocates the Direct Verbs device flow, and introduce the relevant PRM structures. This commit also adds the matcher object. The matcher object acts as a mask and should be shared between flows. For example all rules that should match source IP with full mask should u

[dpdk-dev] [PATCH v3 07/11] net/mlx5: add Direct Verbs translate items

2018-09-24 Thread Yongseok Koh
From: Ori Kam This commit handles the translation of the requested flow into Direct Verbs API. The Direct Verbs introduce the matcher object which acts as shared mask for all flows that are using the same mask. So in this commit we translate the item and get in return a matcher and the value tha

[dpdk-dev] [PATCH v3 04/11] net/mlx5: add support for multiple flow drivers

2018-09-24 Thread Yongseok Koh
From: Ori Kam In the current PMD there is only support for Verbs driver API, to configure NIC rules and TC driver API, to configure eswitch rules. In order to support new drivers that will enable the use of new features for example the Direct Verbs driver API. There is a need to split each driver

[dpdk-dev] [PATCH v3 11/11] net/mlx5: add runtime parameter to enable Direct Verbs

2018-09-24 Thread Yongseok Koh
From: Ori Kam DV flow API is based on new kernel API and is missing some functionality like counter but add other functionality like encap. In order not to affect current users even if the kernel supports the new DV API it should be enabled only manually. Signed-off-by: Ori Kam Acked-by: Yongs

[dpdk-dev] [PATCH v3 08/11] net/mlx5: add Direct Verbs translate actions

2018-09-24 Thread Yongseok Koh
From: Ori Kam In this commit we add the translation of flow actions. Unlike the Verbs API actions are separeted from the items and are passed to the API in array structure. Since the target action like RSS require the QP information those actions are handled both in the translate action and in th

[dpdk-dev] [PATCH v3 10/11] net/mlx5: add Direct Verbs final functions

2018-09-24 Thread Yongseok Koh
From: Ori Kam This commits add the missing function which are apply, remove, and destroy. Signed-off-by: Ori Kam Acked-by: Yongseok Koh --- drivers/net/mlx5/mlx5_flow.c| 4 + drivers/net/mlx5/mlx5_flow.h| 2 + drivers/net/mlx5/mlx5_flow_dv.c | 192 +

[dpdk-dev] [PATCH v3 09/11] net/mlx5: add Direct Verbs driver to glue

2018-09-24 Thread Yongseok Koh
From: Ori Kam This commit adds all Direct Verbs required functions to the glue lib. Signed-off-by: Ori Kam Acked-by: Yongseok Koh --- drivers/net/mlx5/Makefile| 2 +- drivers/net/mlx5/meson.build | 2 +- drivers/net/mlx5/mlx5_glue.c | 45 dri

[dpdk-dev] [PATCH 01/20] net/i40e/base: replace license text with SPDX tag

2018-09-24 Thread Qi Zhang
Signed-off-by: Qi Zhang --- drivers/net/i40e/base/i40e_adminq.c | 35 +++- drivers/net/i40e/base/i40e_adminq.h | 35 +++- drivers/net/i40e/base/i40e_adminq_cmd.h | 35 +++- drivers/net/i40e/base/i40e_alloc

[dpdk-dev] [PATCH 05/20] net/i40e/base: add admin queue definitions for cloud filters

2018-09-24 Thread Qi Zhang
Add new admin queue definitions and extended fields for cloud filter support. Define big buffer for extended general fields in Add/Remove Cloud filters command. Also rename i40e_aqc_add_remove_cloud_filters_element_data to i40e_aq__cloud_filters_element_data. Signed-off-by: Qi Zhang --- drivers

[dpdk-dev] [PATCH 02/20] net/i40e/base: fix partition id calculation for X722

2018-09-24 Thread Qi Zhang
This patch overwrites number of ports for X722 devices with support for OCP PHY mezzanine. The old method with checking if port is disabled in the PRTGEN_CNF register cannot be used in this case. When the OCP is removed, ports were seen as disabled, which resulted in wrong calculation of partition

[dpdk-dev] [PATCH 00/20] base code update

2018-09-24 Thread Qi Zhang
Update base code to cid-i40e.2018.09.13.tar.gz, which include couple AQ command enhancements and bug fixes. Also all source files' license text is replaced with SPDX tag. Qi Zhang (20): net/i40e/base: replace license text with SPDX tag net/i40e/base: fix partition id calculation for X722 net

[dpdk-dev] [PATCH 06/20] net/i40e/base: enable cloud filters via tc flower

2018-09-24 Thread Qi Zhang
This patch enables tc-flower based hardware offloads. tc flower filter provided by the kernel is configured as driver specific cloud filter. The patch implements functions and admin queue commands needed to support cloud filters in the driver and adds cloud filters to configure these tc-flower filt

[dpdk-dev] [PATCH 09/20] net/i40e/base: properly clean resources

2018-09-24 Thread Qi Zhang
Allocated resources were not freed in the event of a failure in i40e_init_lan_hmc function. This patch gracefully handles the fail case after initializing the lan hmc. Cc: sta...@dpdk.org Signed-off-by: Qi Zhang --- drivers/net/i40e/base/i40e_lan_hmc.c | 15 ++- 1 file changed, 10 i

[dpdk-dev] [PATCH 03/20] net/i40e/base: introduce PHY type bitmask

2018-09-24 Thread Qi Zhang
This patch introduces a helper macro define. Signed-off-by: Qi Zhang --- drivers/net/i40e/base/i40e_adminq_cmd.h | 37 + 1 file changed, 37 insertions(+) diff --git a/drivers/net/i40e/base/i40e_adminq_cmd.h b/drivers/net/i40e/base/i40e_adminq_cmd.h index beb1274

[dpdk-dev] [PATCH 07/20] net/i40e/base: improve the polling mechanism

2018-09-24 Thread Qi Zhang
This patch fixes the polling mechanism of GLGEN_RSTAT.DEVSTATE in the PF Reset path when Global Reset is in progress. While the driver is polling for the end of the PF Reset and the Global Reset is triggered, abandon the PF Reset path and prepare for the upcoming Global Reset. Cc: sta...@dpdk.org

[dpdk-dev] [PATCH 04/20] net/i40e/base: enable cloud filter mode for switch config

2018-09-24 Thread Qi Zhang
Add definitions for L4 filters and switch modes based on cloud filters modes and extend the set switch config command to include the additional cloud filter mode. Signed-off-by: Qi Zhang --- drivers/net/i40e/base/i40e_adminq_cmd.h | 30 +- drivers/net/i40e/base/i40e_c

[dpdk-dev] [PATCH 12/20] net/i40e/base: change AQ command for PHY access

2018-09-24 Thread Qi Zhang
Add new field - command flags with only one flag for now. Added flag tells FW that it shouldn't change page while accessing QSFP module, as it was set manually. Signed-off-by: Qi Zhang --- drivers/net/i40e/base/i40e_adminq_cmd.h | 4 +++- drivers/net/i40e/base/i40e_common.c | 18 +++

[dpdk-dev] [PATCH 13/20] net/i40e/base: add additional return code

2018-09-24 Thread Qi Zhang
Firmware can return a busy state, so the i40e_asq_send_command will return I40E_ERR_NOT_READY. Signed-off-by: Qi Zhang --- drivers/net/i40e/base/i40e_adminq.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/net/i40e/base/i40e_adminq.c b/drivers/net/i40e/base/i40e_adminq.c index bb

[dpdk-dev] [PATCH 10/20] net/i40e/base: gracefully clean the resources

2018-09-24 Thread Qi Zhang
Allocated resources were not freed in the event of failure in i40e_init_asq function. This patch gracefully handles all failures. Cc: sta...@dpdk.org Signed-off-by: Qi Zhang --- drivers/net/i40e/base/i40e_adminq.c | 7 ++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/drivers

[dpdk-dev] [PATCH 08/20] net/i40e/base: read LLDP config area with correct endianness

2018-09-24 Thread Qi Zhang
The NVM is in little endian so when we read from it we need to do the correct thing for the endianness of the machine. Cc: sta...@dpdk.org Signed-off-by: Qi Zhang --- drivers/net/i40e/base/i40e_dcb.c | 11 +++ 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/drivers/net/i40

[dpdk-dev] [PATCH 11/20] net/i40e/base: correct global reset timeout calculation

2018-09-24 Thread Qi Zhang
The wait time for Global Reset Ready steady state is calculated based on the GLGEN_RSTCTL.GRSTDEL value. However, current impelementation multiplied that value by 20 as a workaround for an issue in SOC platforms. This resulted in the maximum GLGEN_RSTCTL.GRSTDEL timeout of 6.5 seconds becoming 130

[dpdk-dev] [PATCH 15/20] net/i40e/base: add FC threshold parameter for set MAC

2018-09-24 Thread Qi Zhang
This patch adds the default value for Flow Control Refresh Threshold to set_mac_config AdminQ command. Previously, calling this AdminQ command would overwrite the default value with 0. Signed-off-by: Qi Zhang --- drivers/net/i40e/base/i40e_common.c | 4 1 file changed, 4 insertions(+) diff

[dpdk-dev] [PATCH 17/20] net/i40e/base: wrap admin queue set/get PHY register funcs

2018-09-24 Thread Qi Zhang
These two functions are currently only used in the LED get/set functions, which are not apart of the VF driver. So the i40e_aq_set/get_phy_register functions should be wrapped so they can be removed from the VF driver. This was brought up in the Linux community that these functions in the VF driv

[dpdk-dev] [PATCH 16/20] net/i40e/base: add support for carlsville device

2018-09-24 Thread Qi Zhang
Carlsville Device use 10GBASE-T/1GBASE-T PHY with additional support for 5GBASE-T/2.5GBASE-T. Signed-off-by: Qi Zhang --- drivers/net/i40e/base/i40e_adminq_cmd.h | 59 + drivers/net/i40e/base/i40e_common.c | 10 ++ drivers/net/i40e/base/i40e_devids.h |

[dpdk-dev] [PATCH 14/20] net/i40e/base: add AQ command for rearrange NVM structure

2018-09-24 Thread Qi Zhang
During switching between old NVM structure approach (called structured NVM) to new one (called flat NVM) or backward flash needs to be rearranged to required NVM structure. This is a part of transition from one NVM structure to another. The function is introduced to command firmware to start rearra

[dpdk-dev] [PATCH 19/20] net/i40e/base: add new TR bits used for cloud filters

2018-09-24 Thread Qi Zhang
There is a new set of TR bits that can be used when replacing the cloud filters so add them in. Also added a check to make sure that the replace cloud filters AQ command doesn't get executed on an X722 since it is not supported there. Signed-off-by: Paul M Stillwell Jr Signed-off-by: Andrey Chili

[dpdk-dev] [PATCH 18/20] net/i40e/base: add capability flag for stopping FW LLDP

2018-09-24 Thread Qi Zhang
Add HW capability flag to indicate that firmware supports stopping LLDP agent. This feature has been added in FW API 1.7 for XL710 devices and 1.6 for X722. Also raise expected minor version number for X722 FW API to 6. Signed-off-by: Qi Zhang --- drivers/net/i40e/base/i40e_adminq.c | 6

[dpdk-dev] [PATCH 20/20] net/i40e/base: update readme

2018-09-24 Thread Qi Zhang
Update share code release version in readme. Signed-off-by: Qi Zhang --- 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 247ba11d4..84f191fad 100644 --- a/drivers/net/i40e/base/READ

Re: [dpdk-dev] [PATCH 1/3] ethdev: add flow api actions to modify IP addresses

2018-09-24 Thread Xiaoyu Min
On 18-09-24 13:58:17, Rahul Lakkireddy wrote: > Add actions: > - SET_IPV4_SRC - set a new IPv4 source address. > - SET_IPV4_DST - set a new IPv4 destination address. > - SET_IPV6_SRC - set a new IPv6 source address. > - SET_IPV6_DST - set a new IPv6 destination address. > > Original work by Shagun

Re: [dpdk-dev] [PATCH 2/3] ethdev: add flow api actions to modify TCP/UDP port numbers

2018-09-24 Thread Xiaoyu Min
On 18-09-24 13:58:18, Rahul Lakkireddy wrote: > Add actions: > - SET_TP_SRC - set a new TCP/UDP source port number. > - SET_TP_DST - set a new TCP/UDP destination port number. > > Original work by Shagun Agrawal > > Signed-off-by: Rahul Lakkireddy > --- > Changes since RFC v2: > - Updated commen

Re: [dpdk-dev] [PATCH v3] test/event: fix RSS config in eth Rx adapter test

2018-09-24 Thread Jerin Jacob
-Original Message- > Date: Mon, 24 Sep 2018 14:23:47 +0530 > From: Nikhil Rao > To: jerin.ja...@caviumnetworks.com > CC: dev@dpdk.org, Nikhil Rao , sta...@dpdk.org > Subject: [PATCH v3] test/event: fix RSS config in eth Rx adapter test > X-Mailer: git-send-email 1.8.3.1 > > > Remove RSS

[dpdk-dev] [PATCH] net/ifc: fix function name

2018-09-24 Thread Xiao Wang
The address translation from user virtual address to guest physical address should not be named as qva_to_gpa. Fixes: a3f8150eac6d ("net/ifcvf: add ifcvf vDPA driver") Signed-off-by: Xiao Wang --- drivers/net/ifc/ifcvf_vdpa.c | 14 +++--- 1 file changed, 7 insertions(+), 7 deletions(-)

Re: [dpdk-dev] [PATCH 3/3] event/dpaa2: support for crypto adapter

2018-09-24 Thread Jerin Jacob
-Original Message- > Date: Fri, 14 Sep 2018 17:18:10 +0530 > From: akhil.go...@nxp.com > To: dev@dpdk.org > CC: hemant.agra...@nxp.com, pablo.de.lara.gua...@intel.com, Akhil Goyal > > Subject: [dpdk-dev] [PATCH 3/3] event/dpaa2: support for crypto adapter > X-Mailer: git-send-email 2.17.1

Re: [dpdk-dev] [PATCH] test/eventdev: fix incorrect unit test

2018-09-24 Thread Jerin Jacob
-Original Message- > Date: Sun, 23 Sep 2018 14:29:07 +0530 > From: Jerin Jacob > To: Pavan Nikhilesh > CC: dev@dpdk.org > Subject: Re: [dpdk-dev] [PATCH] test/eventdev: fix incorrect unit test > User-Agent: Mutt/1.10.1 (2018-07-13) > > > -Original Message- > > Date: Wed, 5 Sep

Re: [dpdk-dev] [PATCH v3 1/3] lib/librte_table: add hash_func header files

2018-09-24 Thread Jerin Jacob
-Original Message- > Date: Fri, 7 Sep 2018 11:06:24 +0100 > From: Kevin Laatz > To: dev@dpdk.org > CC: cristian.dumitre...@intel.com, jianbo@arm.com, gavin...@arm.com, > jerin.ja...@caviumnetworks.com, Kevin Laatz > Subject: [PATCH v3 1/3] lib/librte_table: add hash_func header files

Re: [dpdk-dev] [PATCH v2 2/3] kni: fix kni fifo synchronization

2018-09-24 Thread Honnappa Nagarahalli
Hi Ferruh, Just wanted to get your attention to this conversation. Appreciate your feedback on handling the #ifdef clutter. Thank you, Honnappa > -Original Message- > From: dev On Behalf Of Honnappa Nagarahalli > Sent: Friday, September 21, 2018 1:37 AM > To: Jerin Jacob > Cc:

[dpdk-dev] [PATCH v5 0/2] introduce vdpa sample

2018-09-24 Thread Xiaolong Ye
Hi, This patchset introduces vdpa sample to demonstrate the vDPA use case. v5 changes: * improve print format and correct from "PRIu64" to "PRIx64" * use "-c 0x2" to better demonstrate app doesn't need to launch dedicated worker threads for vhost enqueue/dequeue operations in vdpa.rst v4 chan

[dpdk-dev] [PATCH v5 1/2] vhost: introduce API to get vDPA device number

2018-09-24 Thread Xiaolong Ye
It's used to get number of available registered vDPA devices. Signed-off-by: Xiaolong Ye --- lib/librte_vhost/rte_vdpa.h| 3 +++ lib/librte_vhost/rte_vhost_version.map | 1 + lib/librte_vhost/vdpa.c| 6 ++ 3 files changed, 10 insertions(+) diff --git a/lib/librte

[dpdk-dev] [PATCH v5 2/2] examples/vdpa: introduce a new sample for vDPA

2018-09-24 Thread Xiaolong Ye
The vdpa sample application creates vhost-user sockets by using the vDPA backend. vDPA stands for vhost Data Path Acceleration which utilizes virtio ring compatible devices to serve virtio driver directly to enable datapath acceleration. As vDPA driver can help to set up vhost datapath, this applic

Re: [dpdk-dev] [PATCH v4] doc: Clarify IOMMU usage with "uio_pci_generic" kernel module

2018-09-24 Thread Tone Zhang (Arm Technology China)
Hello Bruce, Thanks for the comments. I will update the change and issue v5 soon. Thanks! Br, Tone -Original Message- From: Bruce Richardson Sent: Friday, September 21, 2018 7:20 PM To: Tone Zhang (Arm Technology China) Cc: dev@dpdk.org; Gavin Hu (Arm Technology China) ; bl...@debi

[dpdk-dev] [PATCH v5] doc: Clarify IOMMU usage with "uio_pci_generic" kernel module

2018-09-24 Thread tone.zhang
If the devices used for DPDK are bound to the "uio_pci_generic" kernel module, the IOMMU should be disabled in order not to break the IO transmission because of the virtual / physical address mapping. The patch clarifies the IOMMU configurations on both x86_64 and arm64 systems. Signed-off-by: to

<    1   2