Re: [PATCH 01/10] net/gve: introduce GVE PMD base code

2022-07-29 Thread Stephen Hemminger
On Fri, 29 Jul 2022 15:42:48 -0700 Stephen Hemminger wrote: > On Fri, 29 Jul 2022 19:30:33 + > Xiaoyun Li wrote: > > > diff --git a/drivers/net/gve/gve_adminq.c b/drivers/net/gve/gve_adminq.c > > new file mode 100644 > > index 00..8a724f12c6 > > --- /dev/null > > +++ b/drivers/net/g

Re: [PATCH 01/10] net/gve: introduce GVE PMD base code

2022-07-29 Thread Stephen Hemminger
On Fri, 29 Jul 2022 19:30:33 + Xiaoyun Li wrote: > diff --git a/drivers/net/gve/gve_adminq.c b/drivers/net/gve/gve_adminq.c > new file mode 100644 > index 00..8a724f12c6 > --- /dev/null > +++ b/drivers/net/gve/gve_adminq.c > @@ -0,0 +1,925 @@ > +/* SPDX-License-Identifier: MIT > + * G

RE: [RFC v2] non-temporal memcpy

2022-07-29 Thread Morten Brørup
+TO: @Honnappa, we need input from ARM > From: Konstantin Ananyev [mailto:konstantin.anan...@huawei.com] > Sent: Friday, 29 July 2022 21.49 > > > > > From: Konstantin Ananyev [mailto:konstantin.anan...@huawei.com] > > > Sent: Friday, 29 July 2022 14.14 > > > > > > > > > Sorry, missed that part. >

[PATCH 10/10] doc: update documentation

2022-07-29 Thread Xiaoyun Li
Update documentation of GVE PMD and release note. Add Junfeng Guo as GVE PMD maintainer since he'll work on GVE PMD in the future and maintain it and I won't be available for maintaining. Signed-off-by: Xiaoyun Li --- MAINTAINERS| 6 +++ doc/guides/nics/features/gve.

[PATCH 09/10] net/gve: add stats support

2022-07-29 Thread Xiaoyun Li
Update stats add support of dev_ops stats_get/reset. Signed-off-by: Xiaoyun Li --- drivers/net/gve/gve.h| 10 ++ drivers/net/gve/gve_ethdev.c | 69 drivers/net/gve/gve_rx.c | 15 ++-- drivers/net/gve/gve_tx.c | 12 +++ 4 files chan

[PATCH 08/10] net/gve: add support to get dev info and configure dev

2022-07-29 Thread Xiaoyun Li
Add dev_ops dev_infos_get. Complete dev_configure with RX offloads configuration. Signed-off-by: Xiaoyun Li --- drivers/net/gve/gve.h| 3 ++ drivers/net/gve/gve_ethdev.c | 61 2 files changed, 64 insertions(+) diff --git a/drivers/net/gve/gve.h b/dr

[PATCH 07/10] net/gve: add Rx/Tx support

2022-07-29 Thread Xiaoyun Li
Add Rx/Tx of GQI_QPL queue format and GQI_RDA queue format. Signed-off-by: Xiaoyun Li --- drivers/net/gve/gve.h| 17 ++ drivers/net/gve/gve_ethdev.c | 5 + drivers/net/gve/gve_rx.c | 143 +++ drivers/net/gve/gve_tx.c | 452 +++ 4 files c

[PATCH 06/10] net/gve: add queue operations

2022-07-29 Thread Xiaoyun Li
Add support for queue operations: - setup rx/tx queue - release rx/tx queue - start rx/tx queues - stop rx/tx queues Signed-off-by: Xiaoyun Li --- drivers/net/gve/gve.h| 52 + drivers/net/gve/gve_ethdev.c | 203 + drivers/net/gve/gve_rx.c

[PATCH 05/10] net/gve: add MTU set support

2022-07-29 Thread Xiaoyun Li
Support dev_ops mtu_set. Signed-off-by: Xiaoyun Li --- drivers/net/gve/gve_ethdev.c | 29 + 1 file changed, 29 insertions(+) diff --git a/drivers/net/gve/gve_ethdev.c b/drivers/net/gve/gve_ethdev.c index 435115c047..26b45fde6f 100644 --- a/drivers/net/gve/gve_ethdev.

[PATCH 04/10] net/gve: add link update support

2022-07-29 Thread Xiaoyun Li
Support dev_ops link_update. Signed-off-by: Xiaoyun Li --- drivers/net/gve/gve_ethdev.c | 30 ++ 1 file changed, 30 insertions(+) diff --git a/drivers/net/gve/gve_ethdev.c b/drivers/net/gve/gve_ethdev.c index f10f273f7d..435115c047 100644 --- a/drivers/net/gve/gve_et

[PATCH 03/10] net/gve: support device initialization

2022-07-29 Thread Xiaoyun Li
Support device init and the fowllowing devops: - dev_configure - dev_start - dev_stop - dev_close Signed-off-by: Haiyue Wang Signed-off-by: Xiaoyun Li --- drivers/net/gve/gve.h| 249 +++ drivers/net/gve/gve_adminq.c | 1 + drivers/net/gve/gve_ethdev.c | 375

[PATCH 02/10] net/gve: add logs and OS specific implementation

2022-07-29 Thread Xiaoyun Li
Add GVE PMD logs. Add some MACRO definitions and memory operations which are specific for DPDK. Signed-off-by: Haiyue Wang Signed-off-by: Xiaoyun Li --- drivers/net/gve/gve_adminq.h | 2 + drivers/net/gve/gve_desc.h | 2 + drivers/net/gve/gve_desc_dqo.h | 2 + drivers/net/gve/gve_lo

[PATCH 01/10] net/gve: introduce GVE PMD base code

2022-07-29 Thread Xiaoyun Li
The following base code is based on Google Virtual Ethernet (gve) driver v1.3.0 under MIT license. - gve_adminq.c - gve_adminq.h - gve_desc.h - gve_desc_dqo.h - gve_register.h The original code is in: https://github.com/GoogleCloudPlatform/compute-virtual-ethernet-linux/\ tree/v1.3.0/goo

[PATCH 00/10] introduce GVE PMD

2022-07-29 Thread Xiaoyun Li
Introduce a new PMD for Google Virtual Ethernet (GVE). This patch set requires an exception for MIT license for GVE base code. And the base code includes the following files: - gve_adminq.c - gve_adminq.h - gve_desc.h - gve_desc_dqo.h - gve_register.h It's based on GVE kernel driver v1.3.0 an

Re: [PATCH v2 2/2] pcapng: check if writev() returns a partial write

2022-07-29 Thread Stephen Hemminger
On Fri, 29 Jul 2022 19:08:41 +0200 Mário Kuka wrote: > > Since this is being written to a file, handling partial writes makes little > > sense. The only case where partial write would happen would be if filesystem > > was full. Retrying just adds unnecessary complexity. > > > > If you really want

RE: [RFC v2] non-temporal memcpy

2022-07-29 Thread Morten Brørup
> From: Konstantin Ananyev [mailto:konstantin.anan...@huawei.com] > Sent: Friday, 29 July 2022 14.14 > > > Sorry, missed that part. > > > > > > Another question - who will do 'sfence' after the copying? > > > Would it be inside memcpy_nt (seems quite costly), or would > > > it be another API fun

Re: [PATCH v2 2/2] app/test: invoke all telemetry commands

2022-07-29 Thread Aaron Conole
David Marchand writes: > Try and call all possible telemetry commands. > Each commands is tested with no argument, 0 (for command that accepts > a single integer like for a port identifier) and z (to catch commands > not properly validating input). > Fake cryptodev, dmadev, ethdev, eventdev and r

Re: [PATCH v2 0/2] pcapng: fix some issues with writing packets.

2022-07-29 Thread Mário Kuka
You ignored my feedback from earlier patch. It seems you are adding a lot more here that is necessary. I split the changes into two separate patches, where [PATCH v2 1/2] addresses the IOV_MAX limit issue and where I've incorporated your feedback + added a unit test that tests this situation.

RE: [RFC v2] non-temporal memcpy

2022-07-29 Thread Morten Brørup
> From: Stephen Hemminger [mailto:step...@networkplumber.org] > Sent: Friday, 29 July 2022 18.06 > > On Fri, 29 Jul 2022 12:13:52 + > Konstantin Ananyev wrote: > > > Sorry, missed that part. > > > > > > > > > Another question - who will do 'sfence' after the copying? > > > > Would it be insi

RE: [RFC v2] non-temporal memcpy

2022-07-29 Thread Morten Brørup
> From: Konstantin Ananyev [mailto:konstantin.anan...@huawei.com] > Sent: Friday, 29 July 2022 13.50 > > > > From: Konstantin Ananyev [mailto:konstantin.v.anan...@yandex.ru] > > > Sent: Friday, 29 July 2022 12.00 > > > > > > 24/07/2022 23:18, Morten Brørup пишет: > > > >> From: Konstantin Ananyev

Re: [PATCH v2 2/2] pcapng: check if writev() returns a partial write

2022-07-29 Thread Mário Kuka
Since this is being written to a file, handling partial writes makes little sense. The only case where partial write would happen would be if filesystem was full. Retrying just adds unnecessary complexity. If you really want to track this, then add a dropped counter. But the file descriptor doe

DPDK source code browser

2022-07-29 Thread Morten Brørup
Good news, everyone. Bootlin's Elixir source code browser now includes the stable releases: https://elixir.bootlin.com/dpdk/latest/source I propose to take down the code.dpdk.org source code browser server completely, and permanently link to Bootlin's server instead (also on the DPDK web site).

Re: [RFC v2] non-temporal memcpy

2022-07-29 Thread Stephen Hemminger
On Fri, 29 Jul 2022 12:13:52 + Konstantin Ananyev wrote: > Sorry, missed that part. > > > > > > Another question - who will do 'sfence' after the copying? > > > Would it be inside memcpy_nt (seems quite costly), or would > > > it be another API function for that: memcpy_nt_flush() or so?

mlx5_common failed errno=121

2022-07-29 Thread Panagiotis Famelis
Hello, I am trying to run p4-dpdk-target (https://github.com/p4lang/p4-dpdk-target), with DPDK version 22.07.0-rc2 (the one provided by the p4-dpdk-target). However, when I run the bf_switchd I get the following error, by the dpdk driver: """ mlx5_common: DevX read access NIC register=0X9055 fail

[PATCH v2 2/2] pcapng: check if writev() returns a partial write

2022-07-29 Thread Mário Kuka
The result from wrtiev() is not checked. When writev() returns a partial write, the output file will not contain all packets from the pkts buffer and some packets may be partially written, which is undesirable behavior. To avoid this problem, we have to check the number of bytes returned from the

[PATCH v2 1/2] pcapng: fix write more packets than IOV_MAX limit

2022-07-29 Thread Mário Kuka
The rte_pcapng_write_packets() function fails when we try to write more packets than the IOV_MAX limit. writev() system call is limited by the IOV_MAX limit. The iovcnt argument is valid if it is greater than 0 and less than or equal to IOV_MAX as defined in . To avoid this problem, we can check t

[PATCH v2 0/2] pcapng: fix some issues with writing packets.

2022-07-29 Thread Mário Kuka
This patchset contains fixes for some issues that occur when writing a large burst of packets at once, such as writing more packets than the IOV_MAX limit and the problem of partial writing of a packet to a file if the writev() system call performs a partial write. The typical use of pcapng in o

Re: [PATCH v2 2/2] pcapng: check if writev() returns a partial write

2022-07-29 Thread Stephen Hemminger
On Fri, 29 Jul 2022 09:18:41 +0200 Mário Kuka wrote: > +pcapng_writev(int fd, struct iovec *iov, const int count) > +{ > + size_t total = 0; > + int at = 0; > + > + while (at < count) { > + /* > + * Note: writev() can return the following on a write request: >

Re: [PATCH v2 0/2] pcapng: fix some issues with writing packets.

2022-07-29 Thread Stephen Hemminger
On Fri, 29 Jul 2022 09:18:39 +0200 Mário Kuka wrote: > This patchset contains fixes for some issues that occur when writing a > large burst of packets at once, such as writing more packets than the > IOV_MAX limit and the problem of partial writing of a packet to a file > if the writev() system

Re: [PATCH] app/test: invoke all telemetry commands

2022-07-29 Thread David Marchand
On Fri, Jul 29, 2022 at 3:27 PM Bruce Richardson wrote: > > > Rather than looping for each driver and building a huge cmdline, we should > > > just be able to pass in the path to the drivers directory, and have DPDK > > > auto-load all .so files there. Passing in "meson.project_build_root() + > >

Re: [PATCH v2 1/2] app/test: load drivers using build directory

2022-07-29 Thread Bruce Richardson
On Fri, Jul 29, 2022 at 02:42:55PM +0200, David Marchand wrote: > Since commit 49b536fc3060 ("eal: load only shared libs from driver ...), > we can specify a build directory to the -d option. > > Suggested-by: Bruce Richardson > Signed-off-by: David Marchand Acked-by: Bruce Richardson

Re: [PATCH] app/test: invoke all telemetry commands

2022-07-29 Thread Bruce Richardson
On Fri, Jul 29, 2022 at 01:53:04PM +0200, David Marchand wrote: > On Fri, Jul 29, 2022 at 12:20 PM Bruce Richardson > wrote: > > > > On Fri, Jul 29, 2022 at 11:54:00AM +0200, David Marchand wrote: > > > Try and call all possible telemetry commands. > > > Each commands is tested with no argument, 0

Re: [RFC v3 08/26] dev: move unrelated macros from header

2022-07-29 Thread David Marchand
On Fri, Jul 29, 2022 at 11:59 AM Bruce Richardson wrote: > > > Personally, I really don't like these macros at all. I think having the > > > check explicitly in the code would be far more readable, and would only be > > > one line of code longer than the macro call. Is there some private header >

[PATCH v2 2/2] app/test: invoke all telemetry commands

2022-07-29 Thread David Marchand
Try and call all possible telemetry commands. Each commands is tested with no argument, 0 (for command that accepts a single integer like for a port identifier) and z (to catch commands not properly validating input). Fake cryptodev, dmadev, ethdev, eventdev and rawdev devices are created using dum

[PATCH v2 1/2] app/test: load drivers using build directory

2022-07-29 Thread David Marchand
Since commit 49b536fc3060 ("eal: load only shared libs from driver ...), we can specify a build directory to the -d option. Suggested-by: Bruce Richardson Signed-off-by: David Marchand --- app/test/meson.build | 4 +--- drivers/meson.build | 2 ++ 2 files changed, 3 insertions(+), 3 deletions(

RE: 19.11.13 patches review and test

2022-07-29 Thread Jiang, YuX
> -Original Message- > From: christian.ehrha...@canonical.com > Sent: Monday, July 18, 2022 6:17 PM > To: sta...@dpdk.org > Cc: dev@dpdk.org; Abhishek Marathe ; > Ali Alnubani ; Walker, Benjamin > ; David Christensen > ; Hemant Agrawal ; > Stokes, Ian ; Jerin Jacob ; > Mcnamara, John ; Ju-

Re: [PATCH] app/test: invoke all telemetry commands

2022-07-29 Thread David Marchand
On Fri, Jul 29, 2022 at 12:20 PM Bruce Richardson wrote: > > On Fri, Jul 29, 2022 at 11:54:00AM +0200, David Marchand wrote: > > Try and call all possible telemetry commands. > > Each commands is tested with no argument, 0 (for command that accepts > > a single integer like for a port identifier)

Re: [PATCH] app/test: invoke all telemetry commands

2022-07-29 Thread Bruce Richardson
On Fri, Jul 29, 2022 at 01:13:49PM +0200, David Marchand wrote: > On Fri, Jul 29, 2022 at 12:20 PM Bruce Richardson > wrote: > > > +if not is_windows and dpdk_conf.has('RTE_LIB_TELEMETRY') > > > +test_args = [dpdk_test] > > > +test_args += test_no_huge_args > > > +if get_option('defaul

Re: [RFC v3 21/26] bus: hide bus object

2022-07-29 Thread David Marchand
On Fri, Jul 29, 2022 at 12:02 PM Bruce Richardson wrote: > However, if we do look to fix, how about just dropping the runtime check > completely and just using a build-time one for the RTE_NET_RING macro. I > don't consider it valid for the tests to run with some of the built drivers > deleted. If

Re: [PATCH] app/test: invoke all telemetry commands

2022-07-29 Thread David Marchand
On Fri, Jul 29, 2022 at 12:20 PM Bruce Richardson wrote: > > +if not is_windows and dpdk_conf.has('RTE_LIB_TELEMETRY') > > +test_args = [dpdk_test] > > +test_args += test_no_huge_args > > +if get_option('default_library') == 'shared' > > +foreach drv:dpdk_drivers > > +

[PATCH v4 9/9] dts: add dts executable script

2022-07-29 Thread Juraj Linkeš
The script is an interface to run DTS. Signed-off-by: Owen Hilyard Signed-off-by: Juraj Linkeš --- dts/main.py | 24 1 file changed, 24 insertions(+) create mode 100755 dts/main.py diff --git a/dts/main.py b/dts/main.py new file mode 100755 index 00..a70070765

[PATCH v4 8/9] dts: add dts workflow module

2022-07-29 Thread Juraj Linkeš
The module implements methods needed to run DTS. It handles the creation of objects and eventually the whole DTS workflow, such as running node setups, test gathering, setup and execution and various cleanups. Signed-off-by: Owen Hilyard Signed-off-by: Juraj Linkeš --- dts/framework/dts.py

[PATCH v4 7/9] dts: add Node base class

2022-07-29 Thread Juraj Linkeš
The base class implements basic node management methods - connect and execute commands. Signed-off-by: Owen Hilyard Signed-off-by: Juraj Linkeš --- dts/framework/node.py | 99 +++ dts/framework/settings.py | 11 + 2 files changed, 110 insertions(+) c

[PATCH v4 6/9] dts: add config parser module

2022-07-29 Thread Juraj Linkeš
From: Owen Hilyard The configuration is split into two parts, one defining the parameters of the test run and the other defining the topology to be used. The format of the configuration is YAML. It is validated according to a json schema which also servers as detailed documentation of the variou

[PATCH v4 5/9] dts: add ssh connection extension

2022-07-29 Thread Juraj Linkeš
The class adds logging and history records to existing pexpect methods. Signed-off-by: Owen Hilyard Signed-off-by: Juraj Linkeš --- dts/framework/ssh_connection.py | 70 + 1 file changed, 70 insertions(+) create mode 100644 dts/framework/ssh_connection.py diff

[PATCH v4 3/9] dts: add basic logging facility

2022-07-29 Thread Juraj Linkeš
The logging module provides loggers distinguished by two attributes, a custom format and a verbosity switch. The loggers log to both console and more verbosely to files. Signed-off-by: Owen Hilyard Signed-off-by: Juraj Linkeš --- dts/framework/__init__.py | 3 + dts/framework/logger.py | 12

[PATCH v4 4/9] dts: add ssh pexpect library

2022-07-29 Thread Juraj Linkeš
The library uses the pexpect python library and implements connection to a node and two ways to interact with the node: 1. Send a string with specified prompt which will be matched after the string has been sent to the node. 2. Send a command to be executed. No prompt is specified here. Signed-

[PATCH v4 2/9] dts: add developer tools

2022-07-29 Thread Juraj Linkeš
The Dockerfile contains basic image for CI and developers. There's also an integration of the Dockerfile with Visual Studio. The formatter script uses Black and Isort to format the Python code. Signed-off-by: Owen Hilyard Signed-off-by: Juraj Linkeš --- dts/.devcontainer/devcontainer.json | 30

[PATCH v4 1/9] dts: add project tools config

2022-07-29 Thread Juraj Linkeš
.gitignore contains standard Python-related files. Apart from that, add configuration for Python tools used in DTS: Poetry, dependency and package manager Black, formatter Pylama, static analysis Isort, import sorting .editorconfig modifies the line length to 88, which is the default Black uses.

[PATCH v4 0/9] dts: ssh connection to a node

2022-07-29 Thread Juraj Linkeš
All the necessary code needed to connect to a node in a topology with a bit more, such as basic logging and some extra useful methods. To run the code, modify the config file, conf.yaml and execute ./main.py from the root dts folder. Here's an example config: executions: - system_under_test: "SU

RE: [RFC v2] non-temporal memcpy

2022-07-29 Thread Morten Brørup
> From: Konstantin Ananyev [mailto:konstantin.v.anan...@yandex.ru] > Sent: Friday, 29 July 2022 12.00 > > 24/07/2022 23:18, Morten Brørup пишет: > >> From: Konstantin Ananyev [mailto:konstantin.v.anan...@yandex.ru] > >> Sent: Sunday, 24 July 2022 15.35 > >> > >> 22/07/2022 11:44, Morten Brørup пиш

Re: [PATCH] app/test: invoke all telemetry commands

2022-07-29 Thread Bruce Richardson
On Fri, Jul 29, 2022 at 11:54:00AM +0200, David Marchand wrote: > Try and call all possible telemetry commands. > Each commands is tested with no argument, 0 (for command that accepts > a single integer like for a port identifier) and z (to catch commands > not properly validating input). > Fake cr

RE: [PATCH v6] net/ice: add retry mechanism for DCF after failure

2022-07-29 Thread Zhang, Peng1X
The error code 'VIRTCHNL_STATUS_ERR_RETRY' is used in kernel when DCF state is busy or pause. If DPDK receive VIRTCHNL_STATUS_ERR_RETRY from kernel, actually in 'ice_dcf_send_aq_cmd' function the error code 'VIRTCHNL_STATUS_ERR_RETRY' will be treated as 'IAVF_ERR_NOT_READY'. > -Origi

Re: [RFC v3 21/26] bus: hide bus object

2022-07-29 Thread Bruce Richardson
On Thu, Jul 28, 2022 at 09:26:16PM +0200, David Marchand wrote: > On Thu, Jul 28, 2022 at 6:57 PM Bruce Richardson > wrote: > > > > On Thu, Jul 28, 2022 at 05:26:35PM +0200, David Marchand wrote: > > > Make rte_bus opaque for non internal users. > > > This will make extending this object possible

Re: [RFC v2] non-temporal memcpy

2022-07-29 Thread Konstantin Ananyev
24/07/2022 23:18, Morten Brørup пишет: From: Konstantin Ananyev [mailto:konstantin.v.anan...@yandex.ru] Sent: Sunday, 24 July 2022 15.35 22/07/2022 11:44, Morten Brørup пишет: From: Konstantin Ananyev [mailto:konstantin.v.anan...@yandex.ru] Sent: Friday, 22 July 2022 01.20 Hi Morten, This RF

Re: [RFC v3 08/26] dev: move unrelated macros from header

2022-07-29 Thread Bruce Richardson
On Thu, Jul 28, 2022 at 09:32:38PM +0200, David Marchand wrote: > On Thu, Jul 28, 2022 at 6:38 PM Bruce Richardson > wrote: > > > > On Thu, Jul 28, 2022 at 05:26:22PM +0200, David Marchand wrote: > > > RTE_FUNC_PTR_OR_* macros have nothing to do with the rte_device object > > > and associated API.

[PATCH] app/test: invoke all telemetry commands

2022-07-29 Thread David Marchand
Try and call all possible telemetry commands. Each commands is tested with no argument, 0 (for command that accepts a single integer like for a port identifier) and z (to catch commands not properly validating input). Fake cryptodev, dmadev, ethdev, eventdev and rawdev devices are created using dum

Re: [RFC v2] non-temporal memcpy

2022-07-29 Thread Konstantin Ananyev
28/07/2022 11:51, Morten Brørup пишет: From: Stanisław Kardach [mailto:k...@semihalf.com] Sent: Thursday, 28 July 2022 00.02 On Wed, 27 Jul 2022, 21:53 Honnappa Nagarahalli, wrote: Yes, x86 needs 16B alignment for NT load/stores But that's supposed to be arch specific limitation, that we

[PATCH] common/qat: fix vf2pf answer

2022-07-29 Thread Arek Kusztal
This commit fixes answer sent to physical device in vf2pf communication. Fixes: b17d16fb47b4 ("common/qat: add PF to VF communication") Cc: sta...@dpdk.org Signed-off-by: Arek Kusztal --- drivers/common/qat/qat_pf2vf.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drive

RE: [PATCH v2] config/arm: add Graviton3

2022-07-29 Thread Juraj Linkeš
Reviewed-by: Juraj Linkeš > Subject: [PATCH v2] config/arm: add Graviton3 > > Add meson build configuration for Graviton3 platform with 64-bit Arm Neoverse > N2 cores. > > It adds crypto feature to generic Neoverse N2 config. > > Signed-off-by: Ruifeng Wang