Re: [PATCH v1 01/25] drivers/net: introduce a new PMD driver

2021-12-23 Thread Yanling Song
On Wed, 22 Dec 2021 08:55:22 -0800 Stephen Hemminger wrote: > On Wed, 22 Dec 2021 08:54:00 +0800 > Yanling Song wrote: > > > > If all you want is jiffie accuracy, you could use > > > CLOCK_MONOTONIC_COARSE. > > > > > I did not get your point: CLOCK_MONOTONIC is more accurate than > > CLOC

[PATCH v1] net/mlx5: fix assertion on the flags set in pkt mbuf

2021-12-23 Thread Lior Margalit
Fixed the assertion on the flags set in pkt->ol_flags for vectorized MPRQ. With vectorized MPRQ the CQs are processed before copying the MPRQ bufs so the valid assertion is that the expected flag is set and not that the pkt->ol_flags equlas this flag alone. Fixes: 0f20acbf5eda ("net/mlx5: implemen

[PATCH v2 01/25] drivers/net: introduce a new PMD driver

2021-12-23 Thread Yanling Song
Introduce a new PMD driver which names spnic. Now, this driver only implements module entry without doing anything else. Signed-off-by: Yanling Song --- drivers/net/meson.build | 1 + drivers/net/spnic/base/meson.build| 26 drivers/net/spnic/base/spnic_compat.h | 184 ++

[PATCH v2 02/25] net/spnic: initialize the HW interface

2021-12-23 Thread Yanling Song
Add HW interface registers and initialize the HW interface. Signed-off-by: Yanling Song --- drivers/net/spnic/base/meson.build | 2 + drivers/net/spnic/base/spnic_csr.h | 104 drivers/net/spnic/base/spnic_hwdev.c | 41 ++ drivers/net/spnic/base/spnic_hwdev.h | 29 + drivers/net/spni

[PATCH v2 00/25] Net/SPNIC: support SPNIC into DPDK 22.03

2021-12-23 Thread Yanling Song
The patchsets introduce SPNIC driver for Ramaxel's SPNxx serial NIC cards into DPDK 22.03. Ramaxel Memory Technology is a company which supply a lot of electric products: storage, communication, PCB... SPNxxx is a serial PCIE interface NIC cards: SPN110: 2 PORTs *25G SPN120: 4 PORTs *25G SPN130:

[PATCH v2 04/25] net/spnic: introduce event queue

2021-12-23 Thread Yanling Song
This patch introduce event queue to receive response message from hardware or destiation function when a source function send mbox to it. This commit implements the related data structure, initialization and interfaces handling the message. Signed-off-by: Yanling Song --- drivers/net/spnic/base/

[PATCH v2 08/25] net/spnic: add hardware info initialization

2021-12-23 Thread Yanling Song
This commits add hardware info initialization, including that device capability initialization, common feature negotiation, and two interfaces spnic_get_board_info(), spnic_get_mgmt_version() to get hardware info and firmware version. Signed-off-by: Yanling Song --- drivers/net/spnic/base/meson.

[PATCH v2 05/25] net/spnic: add mgmt module

2021-12-23 Thread Yanling Song
Mgmt module manage the message gerenated from the hardware. This patch implements mgmt module initialization, related event processing and message command definition. Signed-off-by: Yanling Song --- drivers/net/spnic/base/meson.build | 4 +- drivers/net/spnic/base/spnic_cmd.h | 222

[PATCH v2 07/25] net/spnic: add interface handling cmdq message

2021-12-23 Thread Yanling Song
This commit adds cmdq_sync_cmd_direct_resp() and cmdq_sync_cmd_detail_resp() interfaces by which driver can send cmdq message using wqe a data structure describe the buffer. Signed-off-by: Yanling Song --- drivers/net/spnic/base/meson.build | 1 + drivers/net/spnic/base/spnic_cmdq.c| 6

[PATCH v2 06/25] net/spnic: add cmdq and work queue

2021-12-23 Thread Yanling Song
This commit introduce cmdq and work queue which can be used to send bulk message data(up to 2KB) to hardware. cmdq provides a mechanism to encapsulate the message to be sent and handle the response data or status. work queue is used to manager the wqe in which includes message data buffer descripti

[PATCH v2 03/25] net/spnic: add mbox message channel

2021-12-23 Thread Yanling Song
This patch adds a message channel named mbox which can send message form PF/VF driver to hardware or sned message from VF to PF. Signed-off-by: Yanling Song --- drivers/net/spnic/base/meson.build |3 +- drivers/net/spnic/base/spnic_hwdev.c | 69 ++ drivers/net/spnic/base/spnic_hwdev.h |

[PATCH v2 12/25] net/spnic: support mbuf handling of Tx/Rx

2021-12-23 Thread Yanling Song
This patch defines a wqe data structure for hardware to learn the sge info and offload info of packet. Furthermore, this commit implements the interfaces to fill wqe with DPDK mbuf. Signed-off-by: Yanling Song --- drivers/net/spnic/base/spnic_nic_cfg.c | 23 ++ drivers/net/spnic/base/spnic_nic_

[PATCH v2 14/25] net/spnic: add port/vport enable

2021-12-23 Thread Yanling Song
This patch adds interface to enable port/vport so that the hardware would receive packets to host. Signed-off-by: Yanling Song --- drivers/net/spnic/spnic_ethdev.c | 46 1 file changed, 46 insertions(+) diff --git a/drivers/net/spnic/spnic_ethdev.c b/drivers/net

[PATCH v2 11/25] net/spnic: add queue pairs context initialization

2021-12-23 Thread Yanling Song
This patch adds the initialization of Tx/Rx queues context and negotiation of NIC features. Signed-off-by: Yanling Song --- drivers/net/spnic/base/spnic_hw_comm.c | 101 drivers/net/spnic/base/spnic_hw_comm.h | 6 + drivers/net/spnic/base/spnic_nic_cfg.c | 76 +++ drivers/net/spnic/base/

[PATCH v2 13/25] net/spnic: support Rx congfiguration

2021-12-23 Thread Yanling Song
This patch Rx/Tx configuration including Rx csum offload, LRO, RSS, VLAN filter and VLAN offload. Signed-off-by: Yanling Song --- drivers/net/spnic/base/spnic_nic_cfg.c | 525 + drivers/net/spnic/base/spnic_nic_cfg.h | 387 ++ drivers/net/spnic/spnic_ethde

[PATCH v2 09/25] net/spnic: support MAC and link event handling

2021-12-23 Thread Yanling Song
This commit adds interfaces to add/remove MAC addresses and registers related ops to struct eth_dev_ops. Furthermore, this commit adds callback to handle link events. Signed-off-by: Yanling Song --- drivers/net/spnic/base/meson.build | 3 +- drivers/net/spnic/base/spnic_hw_cfg.c| 12

[PATCH v2 10/25] net/spnic: add function info initialization

2021-12-23 Thread Yanling Song
This patch mainly implements function info initialization including mtu, link state, port state, port info and cos as well as the definition of the corresponding data structure. Signed-off-by: Yanling Song --- drivers/net/spnic/base/spnic_hw_cfg.c | 43 +++ drivers/net/spnic/base/spnic_hw_cfg.

[PATCH v2 18/25] net/spnic: support VLAN filtering and offloading

2021-12-23 Thread Yanling Song
This commit implements vlan_filter_set() and vlan_offload_set() to support VLAN filtering and offloading. Signed-off-by: Yanling Song --- drivers/net/spnic/base/spnic_nic_cfg.c | 8 ++ drivers/net/spnic/spnic_ethdev.c | 121 + 2 files changed, 129 insertions(+) d

[PATCH v2 21/25] net/spnic: support getting Tx/Rx queues info

2021-12-23 Thread Yanling Song
This patch implements rxq_info_get() and txq_info_get() to support getting queue depth and mbuf pool info of specified Tx/Rx queue. Signed-off-by: Yanling Song --- drivers/net/spnic/spnic_ethdev.c | 21 + 1 file changed, 21 insertions(+) diff --git a/drivers/net/spnic/spnic_

[PATCH v2 15/25] net/spnic: support IO packets handling

2021-12-23 Thread Yanling Song
This patch implements rx_pkt_burst() and tx_pkt_burst() to hanld IO packets. For Tx packets, this commit implements parsing ol_flags of mbuf and filling those offload info on wqe so that hardware can process the packets correctly. Furthermore, this commit allocates a mempool to cover scenes with t

[PATCH v2 19/25] net/spnic: support promiscuous and allmulticast Rx modes

2021-12-23 Thread Yanling Song
This commit implements promiscuous_enable/disable() and allmulticast_enable/disable() to configure promiscuous or allmulticast Rx modes. Note: promiscuous rx mode is only supported by PF. Signed-off-by: Yanling Song --- drivers/net/spnic/spnic_ethdev.c | 156 +++ 1 fi

[PATCH v2 20/25] net/spnic: support flow control

2021-12-23 Thread Yanling Song
This commit implements flow control operations to support related syscalls. Signed-off-by: Yanling Song --- drivers/net/spnic/base/spnic_nic_cfg.c | 53 ++ drivers/net/spnic/base/spnic_nic_cfg.h | 25 + drivers/net/spnic/spnic_ethdev.c | 77 +

[PATCH v2 23/25] net/spnic: support VFIO interrupt

2021-12-23 Thread Yanling Song
This commit supports VFIO interrupt for Rx queue and asynchronous event, and implements rx_queue_intr_disable() and rx_queue_intr_enable() to disable/enable the interrupt of specified Rx queue. Signed-off-by: Yanling Song --- drivers/net/spnic/base/spnic_eqs.c | 11 ++ drivers/net/spnic/spnic_e

[PATCH v2 22/25] net/spnic: net/spnic: support xstats statistics

2021-12-23 Thread Yanling Song
This commit implements DFX statistics of physical port, function, Rx queues and Tx queues, which includes MAC statistic, unicast/multicast/broadcast packets statistic, rx_mbuf, tx_busy and etc. Signed-off-by: Yanling Song --- drivers/net/spnic/base/spnic_nic_cfg.c | 118 ++ drivers/net/spnic

[PATCH v2 24/25] net/spnic: support Tx/Rx queue start/stop

2021-12-23 Thread Yanling Song
This commit support starting or stopping a specified Rx/Tx queue For Rx queue: when starting rx queue, mbuf will be allocated and fill rq wqe with mbuf info, then add the qid to indirect table of RSS. if the first rx queue is started, the valid bit in function table will be set so that the pack

[PATCH v2 25/25] net/spnic: add doc infrastructure

2021-12-23 Thread Yanling Song
This patch adds doc infrastructure for spnic PMD driver. Signed-off-by: Yanling Song --- MAINTAINERS| 6 +++ doc/guides/nics/features/spnic.ini | 39 +++ doc/guides/nics/index.rst | 1 + doc/guides/nics/spnic.rst | 61 ++

[PATCH v2 16/25] net/spnic: add device configure/version/info

2021-12-23 Thread Yanling Song
This commit adds the callbacks to configure queue number and mtu as well as query configuration information and firmware version. Signed-off-by: Yanling Song --- drivers/net/spnic/spnic_ethdev.c | 129 ++- 1 file changed, 127 insertions(+), 2 deletions(-) diff --git

[PATCH v2 17/25] net/spnic: support RSS configuration update and get

2021-12-23 Thread Yanling Song
This commit implements rss_hash_update and rss_hash_conf_get. Signed-off-by: Yanling Song --- drivers/net/spnic/spnic_ethdev.c | 235 +++ 1 file changed, 235 insertions(+) diff --git a/drivers/net/spnic/spnic_ethdev.c b/drivers/net/spnic/spnic_ethdev.c index 50cca242

[PATCH 0/7] vhost: improve logging

2021-12-23 Thread Maxime Coquelin
This series aims at easing Vhost logs analysis, by prepending the Vhost-user socket path to all logs and to remove multi-line comments. Doing so, filtering Vhost-user ports logs is much easier. Maxime Coquelin (7): vhost: improve IOTLB logs vhost: improve vDPA registration failure log vhost:

[PATCH 2/7] vhost: improve vDPA registration failure log

2021-12-23 Thread Maxime Coquelin
This patchs adds name of the device failing vDPA registration. Signed-off-by: Maxime Coquelin --- lib/vhost/vdpa.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/vhost/vdpa.c b/lib/vhost/vdpa.c index 09ad5d866e..6df2230a67 100644 --- a/lib/vhost/vdpa.c +++ b/lib/vhos

[PATCH 1/7] vhost: improve IOTLB logs

2021-12-23 Thread Maxime Coquelin
This patch adds IOTLB mempool name when logging debug or error messages, and also prepends the socket path. to all the logs. Signed-off-by: Maxime Coquelin --- lib/vhost/iotlb.c | 26 +++--- lib/vhost/iotlb.h | 10 +- lib/vhost/vhost.c | 2 +- lib/vhos

[PATCH 3/7] vhost: improve socket layer logs

2021-12-23 Thread Maxime Coquelin
This patch adds the Vhost socket path whenever possible in order to make debugging possible when multiple Vhost devices are in use. Signed-off-by: Maxime Coquelin --- lib/vhost/socket.c | 129 ++--- 1 file changed, 51 insertions(+), 78 deletions(-) diff -

[PATCH 4/7] vhost: improve Vhost layer logs

2021-12-23 Thread Maxime Coquelin
This patch prepends Vhost logs with the Vhost-user socket patch when available to ease filtering logs for a given port. Signed-off-by: Maxime Coquelin --- lib/vhost/vhost.c | 104 +++--- 1 file changed, 51 insertions(+), 53 deletions(-) diff --git a/lib/v

[PATCH 7/7] vhost: remove multi-line logs

2021-12-23 Thread Maxime Coquelin
This patch replaces multi-lines logs in multiple single- line logs in order to ease logs filtering based on their socket path. Signed-off-by: Maxime Coquelin --- lib/vhost/socket.c | 10 ++-- lib/vhost/vhost.c | 8 ++-- lib/vhost/vhost_user.c | 106 +++

[PATCH 5/7] vhost: improve Vhost-user layer logs

2021-12-23 Thread Maxime Coquelin
This patch adds the Vhost-user socket path to Vhost-user layer logs in order to ease logs filtering. Signed-off-by: Maxime Coquelin --- lib/vhost/vhost_user.c | 573 - 1 file changed, 275 insertions(+), 298 deletions(-) diff --git a/lib/vhost/vhost_user.c

[PATCH 6/7] vhost: improve Virtio-net layer logs

2021-12-23 Thread Maxime Coquelin
This patch standardizes logging done in Virtio-net, so that the Vhost-user socket path is always prepended to the logs. It will ease log analysis when multiple Vhost-user ports are in use. Signed-off-by: Maxime Coquelin --- lib/vhost/virtio_net.c | 165 -

Minutes of Technical Board Meeting, 2021-12-15

2021-12-23 Thread Thomas Monjalon
Members Attending: 12/12 - Aaron Conole - Bruce Richardson - Ferruh Yigit - Hemant Agrawal - Honnappa Nagarahalli - Jerin Jacob - Kevin Traynor - Konstantin Ananyev - Maxime Coquelin - Olivier Matz - Stephen Hem

[PATCH] net/mlx5: fix RSS expansion with explicit next protocol

2021-12-23 Thread Gregory Etelson
The PMD RSS expansion scheme by default compiles flow rules for all flow item types that may branch out from a stub supplied by application. For example, ETH can lead to VLAN, IPv4 or IPv6. IPv4 can lead to UDP, TCP, IPv4 or IPv6. If application explicitly specified next protocol type, expansion m

[PATCH] net/mlx5: fix GRE protocol type translation for VERB API

2021-12-23 Thread Gregory Etelson
When application creates several flows to match on GRE tunnel without explicitly specifying GRE protocol type value in flow rules, PMD will translate that to zero mask. RDMA-CORE cannot distinguish between different inner flow types and produces identical matchers for each zero mask. The patch ext

RE: 20.11.4 patches review and test

2021-12-23 Thread Ali Alnubani
Hi, > -Original Message- > From: Xueming(Steven) Li > Sent: Monday, December 6, 2021 6:15 PM > To: sta...@dpdk.org > Cc: Xueming(Steven) Li ; dev@dpdk.org; Abhishek > Marathe ; Ali Alnubani > ; benjamin.wal...@intel.com; David Christensen > ; hariprasad.govindhara...@intel.com; Hemant > A

Re: 20.11.4 patches review and test

2021-12-23 Thread Xueming(Steven) Li
On Thu, 2021-12-16 at 06:40 +, Jiang, YuX wrote: > > -Original Message- > > From: Xueming(Steven) Li > > Sent: Wednesday, December 15, 2021 10:45 PM > > To: Lin, Xueqin ; Jiang, YuX > > ; > > sta...@dpdk.org > > Cc: Stokes, Ian ; dev@dpdk.org; > > ktray...@redhat.com; abhishek.mara...@

Re: 20.11.4 patches review and test

2021-12-23 Thread Xueming(Steven) Li
Hi Ali, Thanks very much for your support! On Thu, 2021-12-23 at 14:52 +, Ali Alnubani wrote: > Hi, > > > -Original Message- > > From: Xueming(Steven) Li > > Sent: Monday, December 6, 2021 6:15 PM > > To: sta...@dpdk.org > > Cc: Xueming(Steven) Li ; dev@dpdk.org; Abhishek > > Marath

[PATCH] app/test-fib: fix possible division by zero

2021-12-23 Thread Vladimir Medvedkin
This patch fixes the division by 0, which occurs if the number of routes is less than 10. Can be triggered by passing -n argument with value < 10: ./dpdk-test-fib -- -n 9 ... Floating point exception (core dumped) Fixes: 103809d032cd ("app/test-fib: add test application for FIB") Cc: vladimir.me

[PATCH v2] app/test-fib: fix possible division by zero

2021-12-23 Thread Vladimir Medvedkin
This patch fixes the division by 0, which occurs if the number of routes is less than 10. Can be triggered by passing -n argument with value < 10: ./dpdk-test-fib -- -n 9 ... Floating point exception (core dumped) Fixes: 103809d032cd ("app/test-fib: add test application for FIB") Cc: sta...@dpdk.

Re: [PATCH 0/7] vhost: improve logging

2021-12-23 Thread Stephen Hemminger
On Thu, 23 Dec 2021 09:36:52 +0100 Maxime Coquelin wrote: > This series aims at easing Vhost logs analysis, by > prepending the Vhost-user socket path to all logs and to > remove multi-line comments. Doing so, filtering Vhost-user > ports logs is much easier. > > Maxime Coquelin (7): > vhost:

[PATCH] event/cnxk: add timer adapter periodic mode support

2021-12-23 Thread Shijith Thotton
Add support for event timer adapter periodic mode capability. Signed-off-by: Shijith Thotton --- Depends-on: series-20928 (event/cnxk: update min interval calculation) drivers/event/cnxk/cnxk_tim_evdev.c | 21 + drivers/event/cnxk/cnxk_tim_evdev.h | 1 + 2 files changed, 18

[PATCH] eal: log hugepage create errors with filename

2021-12-23 Thread Stephen Hemminger
While debugging running DPDK service in a container, it is useful to see which file creation failed. Don't hide this failure with DEBUG. Signed-off-by: Stephen Hemminger --- lib/eal/linux/eal_memalloc.c | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/eal/linux/ea

[RFC] eal: support systemd service convention for runtime directory

2021-12-23 Thread Stephen Hemminger
Systemd.exec supports configuring the runtime directory of a service via RuntimeDirectory=. This creates the directory with the necessary permissions which actual service may not have if running in container. The change to DPDK is to look for the environment RUNTIME_DIRECTORY first and use that in

[PATCH] net/mlx5: support the imissed counter on Windows

2021-12-23 Thread Tal Shnaiderman
Add support for the imissed counter using the DevX API on Windows. imissed is queried by creating a queue counter for the port, attaching it to all created RQs and querying the "out_of_buffer" field. If the counter cannot be created, imissed will always report 0. Signed-off-by: Tal Shnaiderman