[dpdk-dev] [PATCH V1] add meson build 32-bits on x86_64

2020-04-21 Thread xueming
Add user interaction features. The default build is 64-bits. if you want to build 32-bits on x86_64, need to pass parameters of i686. Merge -vv and -v into the method Signed-off-by: xueming --- devtools/test-meson-builds.sh | 64 +++ 1 file changed, 58 insertions

DPDK 22.11.3 released

2023-09-19 Thread Xueming Li
Hi all, Here is a new stable release: https://fast.dpdk.org/rel/dpdk-22.11.3.tar.xz The git tree is at: https://git.dpdk.org/dpdk-stable/log/?h=22.11 Xueming Li --- .github/workflows/build.yml| 3 +- .mailmap

[dpdk-dev] [PATCH v1] net/virtio: fix vectorized Rx queue stuck

2021-04-14 Thread Xueming Li
From: ".Xueming Li" When Rx queue worked in vectorized mode and rxd <= 512, under traffic of high PPS rate, testpmd often start and receive packets of rxd without further growth. Testpmd started with rxq flush which tried to rx MAX_PKT_BURST(512) packets and drop. When Rx burst siz

[dpdk-dev] [PATCH] devargs: backup entry when inserting duplicated item

2021-04-17 Thread Xueming Li
When insert devargs that already in list, existing one was reset and replaced completely by new once, the entry info was lost during copy. This patch backups entry info before copy. Fixes: 64051bb1f144 ("devargs: unify scratch buffer storage") Signed-off-by: Xueming Li --- lib/

[dpdk-dev] [PATCH] net/mlx5: probe LAG representor with PF1 PCI address

2021-04-22 Thread Xueming Li
PF0 device can't remove representors on PF1. It's recommended to use primary(PF0) PCI address to probe representors on both PFs. Signed-off-by: Xueming Li --- drivers/net/mlx5/linux/mlx5_os.c | 7 +-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/drivers/net/mlx5/linux

[dpdk-dev] [PATCH v5 1/2] devargs: add common key definition

2021-06-22 Thread Xueming Li
Adds common devargs key definition for "bus", "class" and "driver". Cc: Thomas Monjalon Signed-off-by: Xueming Li --- drivers/common/mlx5/mlx5_common.h | 2 -- drivers/common/mlx5/mlx5_common_pci.c | 2 +- drivers/common/sfc_efx/sfc_efx.c| 7 +

[dpdk-dev] [PATCH v5 2/2] bus/auxiliary: introduce auxiliary bus

2021-06-22 Thread Xueming Li
syntax ofauxiliary device: -a auxiliary:[,args...] Devargs generic syntax of auxiliary device: -a bus=auxiliary,name=,,/class=,,/driver=,, [1] kernel auxiliary bus document: https://www.kernel.org/doc/html/latest/driver-api/auxiliary_bus.html Signed-off-by: Xueming Li Cc: Wang Haiyue Cc: Thomas

[dpdk-dev] [PATCH v6 1/2] devargs: add common key definition

2021-06-25 Thread Xueming Li
Adds common devargs key definition for "bus", "class" and "driver". Acked-by: Thomas Monjalon Signed-off-by: Xueming Li --- drivers/common/mlx5/mlx5_common.h | 2 -- drivers/common/mlx5/mlx5_common_pci.c | 2 +- drivers/common/sfc_efx/sfc_efx.c

[dpdk-dev] [PATCH v6 2/2] bus/auxiliary: introduce auxiliary bus

2021-06-25 Thread Xueming Li
syntax ofauxiliary device: -a auxiliary:[,args...] Devargs generic syntax of auxiliary device: -a bus=auxiliary,name=,,/class=,,/driver=,, [1] kernel auxiliary bus document: https://www.kernel.org/doc/html/latest/driver-api/auxiliary_bus.html Signed-off-by: Xueming Li Cc: Wang Haiyue Cc: Thomas

[dpdk-dev] 20.11.2 patches review and test

2021-06-26 Thread Xueming Li
validations will be added to the release notes. A release candidate tarball can be found at: https://dpdk.org/browse/dpdk-stable/tag/?id=v20.11.2-rc2 These patches are located at branch 20.11 of dpdk-stable repo: https://dpdk.org/browse/dpdk-stable/ Thanks. Xueming Li --- Adam Dybkowski (3

[dpdk-dev] 20.11.2 patches review and test

2021-06-26 Thread Xueming Li
validations will be added to the release notes. A release candidate tarball can be found at: https://dpdk.org/browse/dpdk-stable/tag/?id=v20.11.2-rc2 These patches are located at branch 20.11 of dpdk-stable repo: https://dpdk.org/browse/dpdk-stable/ Thanks. Xueming Li --- Adam Dybkowski (3

[dpdk-dev] [PATCH v2 1/2] devtools: fix version pattern for fix search

2021-06-29 Thread Xueming Li
. Official tag pattern: "v." Fixes: 752d8e097ec1 ("scripts: show fixes with release version of bug") Cc: Thomas Monjalon Cc: sta...@dpdk.org Signed-off-by: Xueming Li Reviewed-by: Christian Ehrhardt --- devtools/git-log-fixes.sh | 5 +++-- 1 file changed, 3 insertions(+), 2 deleti

[dpdk-dev] [PATCH v2 2/2] devtools: fix patches missing if range newer than HEAD

2021-06-29 Thread Xueming Li
specified in parameter must being merged in . Fixes: 752d8e097ec1 ("scripts: show fixes with release version of bug") Cc: Thomas Monjalon Cc: sta...@dpdk.org Cc: Christian Ehrhardt Signed-off-by: Xueming Li --- devtools/git-log-fixes.sh | 23 +-- 1 file changed, 17 insert

[dpdk-dev] [PATCH v7 1/2] devargs: add common key definition

2021-07-04 Thread Xueming Li
Adds common devargs key definition for "bus", "class" and "driver". Acked-by: Thomas Monjalon Signed-off-by: Xueming Li --- drivers/common/mlx5/mlx5_common.h | 2 -- drivers/common/mlx5/mlx5_common_pci.c | 2 +- drivers/common/sfc_efx/sfc_efx.c

[dpdk-dev] [PATCH v7 2/2] bus/auxiliary: introduce auxiliary bus

2021-07-04 Thread Xueming Li
syntax of auxiliary device: -a auxiliary:[,args...] Devargs generic syntax of auxiliary device: -a bus=auxiliary,name=/class=/driver=[,args...] [1] kernel auxiliary bus document: https://www.kernel.org/doc/html/latest/driver-api/auxiliary_bus.html Signed-off-by: Xueming Li Cc: Wang Haiyue Cc

[dpdk-dev] [PATCH v8 1/2] devargs: add common key definition

2021-07-04 Thread Xueming Li
Adds common devargs key definition for "bus", "class" and "driver". Acked-by: Thomas Monjalon Signed-off-by: Xueming Li --- drivers/common/mlx5/mlx5_common.h | 2 -- drivers/common/mlx5/mlx5_common_pci.c | 2 +- drivers/common/sfc_efx/sfc_efx.c

[dpdk-dev] [PATCH v8 2/2] bus/auxiliary: introduce auxiliary bus

2021-07-04 Thread Xueming Li
syntax of auxiliary device: -a auxiliary:[,args...] Devargs generic syntax of auxiliary device: -a bus=auxiliary,name=/class=/driver=[,args...] [1] kernel auxiliary bus document: https://www.kernel.org/doc/html/latest/driver-api/auxiliary_bus.html Signed-off-by: Xueming Li Cc: Wang Haiyue Cc

[dpdk-dev] [PATCH] net/mlx5: fix SubFunction representor probe in isolate mode

2021-07-07 Thread Xueming Li
Representor failed to probe in isolated mode due to callback of retrieving representor info missing. This patch adds it back. Fixes: cb95feefdd03 ("net/mlx5: support sub-function representor") Cc: sta...@dpdk.org Signed-off-by: Xueming Li --- drivers/net/mlx5/mlx5.c | 2 ++ 1 file

Re: [dpdk-stable] [PATCH v3 2/2] devtools: fix patches missing if range newer than HEAD

2024-08-21 Thread Xueming Li
...@redhat.com ; sta...@dpdk.org ; dev@dpdk.org ; Xueming Li Subject: Re: [dpdk-stable] [PATCH v3 2/2] devtools: fix patches missing if range newer than HEAD On Sat, 26 Nov 2022 22:44:26 +0100 Thomas Monjalon wrote: > Someone to help with review of this patch please? > Is there a real need? &g

23.11.2 patches review and test

2024-08-22 Thread Xueming Li
validations will be added to the release notes. A release candidate tarball can be found at: https://dpdk.org/browse/dpdk-stable/tag/?id=v23.11.2-rc2 These patches are located at branch 23.11 of dpdk-stable repo: https://dpdk.org/browse/dpdk-stable/ Thanks. Xueming Li --- Abdullah Ömer Yamaç

Re: 23.11.2 patches review and test

2024-08-28 Thread Xueming Li
Hi YangHang, Thanks for the verification and feedback! Best Regards, Xueming From: YangHang Liu Sent: Wednesday, August 28, 2024 3:23 PM To: Xueming Li Cc: sta...@dpdk.org ; dev@dpdk.org ; Abhishek Marathe ; Ali Alnubani ; David Christensen ; Hemant Agrawal

Re: 23.11.2 patches review and test

2024-08-29 Thread Xueming Li
Hi Ali, Thanks for the verification and support! Best regards, Xueming From: Ali Alnubani Sent: Thursday, August 29, 2024 4:46 PM To: Xueming Li ; sta...@dpdk.org Cc: dev@dpdk.org ; Abhishek Marathe ; David Christensen ; Hemant Agrawal ; Ian Stokes ; Jerin

Re: 23.11.2 patches review and test

2024-08-30 Thread Xueming Li
Hi Hailin, Well done, thanks for the verification and report! Best Regards, Xueming From: Xu, HailinX Sent: Friday, August 30, 2024 6:00 PM To: Xueming Li ; sta...@dpdk.org Cc: dev@dpdk.org ; Abhishek Marathe ; Ali Alnubani ; David Christensen ; Hemant

DPDK 23.11.2 released

2024-09-04 Thread Xueming Li
Hi all, Here is a new stable release: https://fast.dpdk.org/rel/dpdk-23.11.2.tar.xz The git tree is at: https://dpdk.org/browse/dpdk-stable/?h=23.11 Xueming Li --- .mailmap | 24 +- VERSION

[dpdk-dev] [PATCH v3 0/5] eal: enable global device syntax by default

2021-03-30 Thread Xueming Li
/uploads/sites/35/2018/10/am-07-DPDK-hotplug-20180905.pdf [2] RFC: http://patchwork.dpdk.org/project/dpdk/list/?series=14378 [3] V1: http://patchwork.dpdk.org/project/dpdk/list/?series=14610 [4] V2: http://patchwork.dpdk.org/project/dpdk/list/?series=14816 Xueming Li (5): devargs: unify scratch

[dpdk-dev] [PATCH v3 1/5] devargs: unify scratch buffer storage

2021-03-30 Thread Xueming Li
field, introduces rte_devargs_reset() function to wrap the memory clean up logic. Signed-off-by: Xueming Li --- app/test-pmd/config.c| 3 +- app/test-pmd/testpmd.c | 5 +-- drivers/bus/vdev/vdev.c | 9 +++--- drivers/net/failsafe

[dpdk-dev] [PATCH v3 2/5] devargs: fix memory leak on parsing error

2021-03-30 Thread Xueming Li
This patch fixes memory leak in parsing error handling. Fixes: 338327d731e6 ("devargs: add function to parse device layers") Cc: gaetan.ri...@6wind.com Cc: sta...@dpdk.org Signed-off-by: Xueming Li --- lib/librte_eal/common/eal_common_devargs.c | 10 +- 1 file changed, 9

[dpdk-dev] [PATCH v3 3/5] kvargs: add get by key function

2021-03-30 Thread Xueming Li
Adds a new function to get value of a specific key from kvargs list. Signed-off-by: Xueming Li --- lib/librte_kvargs/rte_kvargs.c | 20 lib/librte_kvargs/rte_kvargs.h | 21 + lib/librte_kvargs/version.map | 1 + 3 files changed, 42 insertions(+) diff

[dpdk-dev] [PATCH v3 4/5] bus: add device arguments name parsing API

2021-03-30 Thread Xueming Li
might choose different keys from parameters with unified formating, example: -a bus=pci,addr=83:00.0/class=eth/driver=mlx5,... name: :03:00.0 -a bus=vdev,name=pcap0/class=eth/driver=pcap,... name:pcap0 Signed-off-by: Xueming Li --- drivers/bus/pci/pci_common.c | 1

[dpdk-dev] [PATCH v3 5/5] devargs: parse global device syntax

2021-03-30 Thread Xueming Li
When parsing a devargs, try to parse using the global device syntax first. Fallback on legacy syntax on error. Example of new global device syntax: -a bus=pci,addr=82:00.0/class=eth/driver=mlx5,dv_flow_en=1 Signed-off-by: Xueming Li --- lib/librte_eal/common/eal_common_devargs.c | 7

[dpdk-dev] [PATCH v4 0/5] eal: enable global device syntax by default

2021-04-10 Thread Xueming Li
78 [3] V1: http://patchwork.dpdk.org/project/dpdk/list/?series=14610 [4] V2: http://patchwork.dpdk.org/project/dpdk/list/?series=14816 [5] V3: http://patchwork.dpdk.org/project/dpdk/list/?series=15979 Xueming Li (5): devargs: unify scratch buffer storage devargs: fix memory leak on parsing erro

[dpdk-dev] [PATCH v4 1/5] devargs: unify scratch buffer storage

2021-04-10 Thread Xueming Li
field, introduces rte_devargs_reset() function to wrap the memory clean up logic. Signed-off-by: Xueming Li Acked-by: Ray Kinsella Reviewed-by: Gaetan Rivet --- app/test-pmd/config.c| 3 +- app/test-pmd/testpmd.c | 5 +-- drivers/bus/vdev/vdev.c

[dpdk-dev] [PATCH v4 2/5] devargs: fix memory leak on parsing error

2021-04-10 Thread Xueming Li
This patch fixes memory leak in parsing error handling. Fixes: 338327d731e6 ("devargs: add function to parse device layers") Cc: gaetan.ri...@6wind.com Cc: sta...@dpdk.org Signed-off-by: Xueming Li Reviewed-by: Gaetan Rivet --- lib/librte_eal/common/eal_common_devargs.c | 10 +++

[dpdk-dev] [PATCH v4 3/5] kvargs: add get by key function

2021-04-10 Thread Xueming Li
Adds a new function to get value of a specific key from kvargs list. Signed-off-by: Xueming Li Reviewed-by: Gaetan Rivet --- lib/librte_kvargs/rte_kvargs.c | 20 lib/librte_kvargs/rte_kvargs.h | 21 + lib/librte_kvargs/version.map | 3 +++ 3 files

[dpdk-dev] [PATCH v4 4/5] bus: add device arguments name parsing API

2021-04-10 Thread Xueming Li
arguments with unified format. The PCI bus implementation fills the devargs name with the "addr" argument, example: -a bus=pci,addr=83:00.0/class=eth/driver=mlx5,... name: :03:00.0 -a bus=vdev,name=pcap0/class=eth/driver=pcap,... name:pcap0 Signed-off-by: Xueming Li

[dpdk-dev] [PATCH v4 5/5] devargs: parse global device syntax

2021-04-10 Thread Xueming Li
When parsing a devargs, try to parse using the global device syntax first. Fallback on legacy syntax on error. Example of new global device syntax: -a bus=pci,addr=82:00.0/class=eth/driver=mlx5,dv_flow_en=1 Signed-off-by: Xueming Li Reviewed-by: Gaetan Rivet --- doc/guides/rel_notes

[dpdk-dev] [PATCH v5 0/5] eal: enable global device syntax by default

2021-04-12 Thread Xueming Li
] V3: http://patchwork.dpdk.org/project/dpdk/list/?series=15979 [6] v4: http://patchwork.dpdk.org/project/dpdk/list/?series=16267 Xueming Li (5): devargs: unify scratch buffer storage devargs: fix memory leak on parsing error kvargs: add get by key function bus: add device arguments name parsing API

[dpdk-dev] [PATCH v5 1/5] devargs: unify scratch buffer storage

2021-04-12 Thread Xueming Li
field, introduces rte_devargs_reset() function to wrap the memory clean up logic. Signed-off-by: Xueming Li Acked-by: Ray Kinsella Reviewed-by: Gaetan Rivet --- app/test-pmd/config.c| 3 +- app/test-pmd/testpmd.c | 5 +-- drivers/bus/vdev/vdev.c

[dpdk-dev] [PATCH v5 3/5] kvargs: add get by key function

2021-04-12 Thread Xueming Li
Adds a new function to get value of a specific key from kvargs list. Signed-off-by: Xueming Li Reviewed-by: Gaetan Rivet --- lib/librte_kvargs/rte_kvargs.c | 15 +++ lib/librte_kvargs/rte_kvargs.h | 20 lib/librte_kvargs/version.map | 3 +++ 3 files changed

[dpdk-dev] [PATCH v5 4/5] bus: add device arguments name parsing API

2021-04-12 Thread Xueming Li
arguments with unified format. The PCI bus implementation fills the devargs name with the "addr" argument, example: -a bus=pci,addr=83:00.0/class=eth/driver=mlx5,... name: :03:00.0 -a bus=vdev,name=pcap0/class=eth/driver=pcap,... name:pcap0 Signed-off-by: Xueming Li

[dpdk-dev] [PATCH v5 2/5] devargs: fix memory leak on parsing error

2021-04-12 Thread Xueming Li
This patch fixes memory leak in parsing error handling. Fixes: 338327d731e6 ("devargs: add function to parse device layers") Cc: gaetan.ri...@6wind.com Cc: sta...@dpdk.org Signed-off-by: Xueming Li Reviewed-by: Gaetan Rivet --- lib/librte_eal/common/eal_common_devargs.c | 10 +++

[dpdk-dev] [PATCH v5 5/5] devargs: parse global device syntax

2021-04-12 Thread Xueming Li
When parsing a devargs, try to parse using the global device syntax first. Fallback on legacy syntax on error. Example of new global device syntax: -a bus=pci,addr=82:00.0/class=eth/driver=mlx5,dv_flow_en=1 Signed-off-by: Xueming Li Reviewed-by: Gaetan Rivet --- doc/guides/rel_notes

[dpdk-dev] [PATCH v1] bus/auxiliary: introduce auxiliary bus

2021-04-12 Thread Xueming Li
bus document: https://www.kernel.org/doc/html/latest/driver-api/auxiliary_bus.html Signed-off-by: Xueming Li --- MAINTAINERS | 5 + drivers/bus/auxiliary/auxiliary_common.c | 391 ++ drivers/bus/auxiliary/auxiliary_params.c | 58 drivers

[dpdk-dev] [PATCH] net/virtio: fix vectorized Rx queue stuck

2021-04-13 Thread Xueming Li
ector Rx") Cc: huawei@intel.com Fixes: 2d7c37194ee4 ("net/virtio: add NEON based Rx handler") Cc: jerin.ja...@caviumnetworks.com Fixes: 52b5a707e6ca ("net/virtio: add Altivec Rx") Cc: d...@linux.vnet.ibm.com Cc: sta...@dpdk.org Signed-off-by: Xu

DPDK 20.11.4 released

2022-01-25 Thread Xueming Li
nubani Also thanks for people who helped to reslove conflicts manually. Xueming Li --- VERSION| 2 +- app/test-compress-perf/comp_perf_test_cyclecount.c | 2 - app/test-crypto-perf/cperf_test_vectors.c | 4 + app/test-eventde

[PATCH v2] vhost: add vDPA resource cleanup callback

2022-01-27 Thread Xueming Li
This patch adds vDPA device cleanup callback to release resources on vhost user connection close. Signed-off-by: Xueming Li --- lib/vhost/vdpa_driver.h | 3 +++ lib/vhost/vhost_user.c | 6 ++ 2 files changed, 9 insertions(+) diff --git a/lib/vhost/vdpa_driver.h b/lib/vhost/vdpa_driver.h

[dpdk-dev] [PATCH v5 0/5] ethdev: introduce shared Rx queue

2021-10-11 Thread Xueming Li
p v4: - spelling fixes - remove shared-rxq support for all forwarding engines - add dedicate shared-rxq forwarding engine v5: - fix grammars - remove aggregate api and leave it for later discussion - add release notes - add deployment example Xueming Li (5): ethdev: introduce sha

[dpdk-dev] [PATCH v5 3/5] app/testpmd: dump port info for shared Rx queue

2021-10-11 Thread Xueming Li
In case of shared Rx queue, polling any member port returns mbufs for all members. This patch dumps mbuf->port for each packet. Signed-off-by: Xueming Li --- app/test-pmd/util.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/app/test-pmd/util.c b/app/test-pmd/util.c index 51506e49

[dpdk-dev] [PATCH v5 1/5] ethdev: introduce shared Rx queue

2021-10-11 Thread Xueming Li
Rx queue per port: rep2, rep3, ... rep127 Core0: poll PF queue0 Core1: poll PF queue1 Core2: poll rep2 queue0 Signed-off-by: Xueming Li Cc: Jerin Jacob --- Rx queue object could be used as shared Rx queue object, it's important to clear all queue control callback api that using queue object:

[dpdk-dev] [PATCH v5 4/5] app/testpmd: force shared Rx queue polled on same core

2021-10-11 Thread Xueming Li
Shared rxqs shares one set rx queue of groups zero. Shared Rx queue must must be polled from one core. Checks and stops forwarding if shared rxq being scheduled on multiple cores. Signed-off-by: Xueming Li --- app/test-pmd/config.c | 96 ++ app/test-pmd

[dpdk-dev] [PATCH v5 5/5] app/testpmd: add forwarding engine for shared Rx queue

2021-10-11 Thread Xueming Li
To support shared Rx queue, this patch introduces dedicate forwarding engine. The engine groups received packets by mbuf->port into sub-group, updates stream statistics and simply frees packets. Signed-off-by: Xueming Li --- app/test-pmd/meson.build| 1 + app/test-

[dpdk-dev] [PATCH v5 2/5] app/testpmd: new parameter to enable shared Rx queue

2021-10-11 Thread Xueming Li
Adds "--rxq-share" parameter to enable shared rxq for each rxq. Default shared rxq group 0 is used, Rx queues in same switch domain shares same rxq according to queue index. Shared Rx queue is enabled only if device support offloading flag RTE_ETH_RX_OFFLOAD_SHARED_RXQ. Signed-off-b

[dpdk-dev] [PATCH v6 2/5] app/testpmd: new parameter to enable shared Rx queue

2021-10-12 Thread Xueming Li
ly and update stream statistics correctly. Signed-off-by: Xueming Li --- app/test-pmd/config.c | 6 +- app/test-pmd/parameters.c | 13 + app/test-pmd/testpmd.c| 12 app/test-pmd/testpmd.h| 2 ++ doc/guides/testpm

[dpdk-dev] [PATCH v6 0/5] ethdev: introduce shared Rx queue

2021-10-12 Thread Xueming Li
d flag with device offload capability flag - add Rx domain - RxQ is shared when share group > 0 - update testpmd accordingly Xueming Li (5): ethdev: introduce shared Rx queue app/testpmd: new parameter to enable shared Rx queue app/testpmd: dump port info for shared Rx queue app/testpmd:

[dpdk-dev] [PATCH v6 1/5] ethdev: introduce shared Rx queue

2021-10-12 Thread Xueming Li
ch other. Signed-off-by: Xueming Li --- doc/guides/nics/features.rst | 13 doc/guides/nics/features/default.ini | 1 + .../prog_guide/switch_representation.rst | 10 + doc/guides/rel_notes/release_21_11.rst| 5 + lib/ethdev/rte_

[dpdk-dev] [PATCH v6 4/5] app/testpmd: force shared Rx queue polled on same core

2021-10-12 Thread Xueming Li
Shared Rx queue must be polled on same core. This patch checks and stops forwarding if shared RxQ being scheduled on multiple cores. It's suggested to use same number of Rx queues and polling cores. Signed-off-by: Xueming Li --- app/test-pmd/config.c

[dpdk-dev] [PATCH v6 3/5] app/testpmd: dump port info for shared Rx queue

2021-10-12 Thread Xueming Li
In case of shared Rx queue, polling any member port returns mbufs for all members. This patch dumps mbuf->port for each packet. Signed-off-by: Xueming Li --- app/test-pmd/util.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/app/test-pmd/util.c b/app/test-pmd/util.c index 51506e49

[dpdk-dev] [PATCH v6 5/5] app/testpmd: add forwarding engine for shared Rx queue

2021-10-12 Thread Xueming Li
To support shared Rx queue, this patch introduces dedicate forwarding engine. The engine groups received packets by mbuf->port into sub-group, updates stream statistics and simply frees packets. Signed-off-by: Xueming Li --- app/test-pmd/meson.build| 1 + app/test-

[dpdk-dev] [PATCH] net/bonding: fix Rx queue data destroyed by Tx queue release

2021-10-15 Thread Xueming Li
When release Tx queue, Rx queue data got freed because wrong Tx queue data located. This patch fixes the wrong Tx queue data location. Fixes: 7483341ae553 ("ethdev: change queue release callback") Signed-off-by: Xueming Li --- drivers/net/bonding/rte_eth_bond_pmd.c | 2 +- 1 file

[dpdk-dev] [PATCH v1 1/2] vdpa/mlx5: workaround FW first completion in start

2021-10-15 Thread Xueming Li
. As a firmware workaround, this patch sends a notification after VQ setup to ask driver handling buffers and filling new buffers. Cc: sta...@dpdk.org Signed-off-by: Xueming Li Reviewed-by: Matan Azrad --- drivers/vdpa/mlx5/mlx5_vdpa_virtq.c | 4 1 file changed, 4 insertions(+) diff --git a

[dpdk-dev] [PATCH v1 2/2] vdpa/mlx5: retry VAR allocation during vDPA restart

2021-10-15 Thread Xueming Li
singleton resource per device. This patch adds retry mechanism for VAR allocation. Cc: sta...@dpdk.org Signed-off-by: Xueming Li Reviewed-by: Matan Azrad --- drivers/vdpa/mlx5/mlx5_vdpa.c | 9 - 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/drivers/vdpa/mlx5/mlx5_vdpa.c b

[dpdk-dev] [PATCH v2 1/2] vdpa/mlx5: workaround FW first completion in start

2021-10-15 Thread Xueming Li
. As a firmware workaround, this patch sends a notification after VQ setup to ask driver handling buffers and filling new buffers. Fixes: bff735011078 ("vdpa/mlx5: prepare virtio queues") Cc: sta...@dpdk.org Signed-off-by: Xueming Li Reviewed-by: Matan Azrad --- drivers/vdpa/mlx5/mlx5_vd

[dpdk-dev] [PATCH v2 2/2] vdpa/mlx5: retry VAR allocation during vDPA restart

2021-10-15 Thread Xueming Li
singleton resource per device. This patch adds retry mechanism for VAR allocation. Fixes: 4cae722c1b06 ("vdpa/mlx5: move virtual doorbell alloc to probe") Cc: sta...@dpdk.org Signed-off-by: Xueming Li Reviewed-by: Matan Azrad --- drivers/vdpa/mlx5/mlx5_vdpa.c | 9 - 1 file

[dpdk-dev] [PATCH v2 3/8] net/mlx5: improve Verbs flow priority discover for scalable

2021-10-16 Thread Xueming Li
To detect number flow Verbs flow priorities, PMD try to create Verbs flows in different priority. While Verbs is not designed to support ports larger than 255. When DevX supported by kernel driver, 16 Verbs priorities must be supported, no need to create Verbs flows. Signed-off-by: Xueming Li

[dpdk-dev] [PATCH v2 1/8] common/mlx5: add netlink API to get RDMA port state

2021-10-16 Thread Xueming Li
Introduce netlink API to get rdma port state. Port state is restrieved based on RDMA device name and port index. Signed-off-by: Xueming Li --- drivers/common/mlx5/linux/meson.build | 2 + drivers/common/mlx5/linux/mlx5_nl.c | 136 +++--- drivers/common/mlx5/linux

[dpdk-dev] [PATCH v2 2/8] net/mlx5: use netlink when IB port greater than 255

2021-10-16 Thread Xueming Li
IB spec doesn't allow 255 ports on a single HCA, port number of 256 was cast to u8 value 0 which invalid to ibv_query_port() This patch invokes Netlink api to query port state when port number greater than 255. Signed-off-by: Xueming Li --- drivers/net/mlx5/linux/mlx5_os.c

[dpdk-dev] [PATCH v2 4/8] net/mlx5: support E-Switch manager egress traffic match

2021-10-16 Thread Xueming Li
on E-Switch manager. E-Switch manager vport ID is 0xfffe on BlueField, 0 otherwise. Signed-off-by: Xueming Li --- drivers/net/mlx5/mlx5_flow.h| 3 +++ drivers/net/mlx5/mlx5_flow_dv.c | 25 + 2 files changed, 28 insertions(+) diff --git a/drivers/net/mlx5

[dpdk-dev] [PATCH v2 5/8] net/mlx5: supports flow item of normal Tx queue

2021-10-16 Thread Xueming Li
Extends txq flow pattern to support both hairpin and regular txq. Signed-off-by: Xueming Li --- drivers/net/mlx5/mlx5_flow_dv.c | 16 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/drivers/net/mlx5/mlx5_flow_dv.c b/drivers/net/mlx5/mlx5_flow_dv.c index

[dpdk-dev] [PATCH v2 0/8] net/mlx5: support more than 255 representors

2021-10-16 Thread Xueming Li
This patch set supports representor number of a PF to be more than 255. CX6 and current OFED driver supports maxium 512 SFs. CX5 supports max 255 SFs. v2: - fixed FDB root table flow priority - add error check to Netlink port state API - commit log update and other minor fixes Xueming Li (8

[dpdk-dev] [PATCH v2 8/8] net/mlx5: check DevX to support more Verbs ports

2021-10-16 Thread Xueming Li
Verbs API doesn't support device port number larger than 255 by design. To support more VF or SubFunction port representors, forces DevX API check when max Verbs device link ports larger than 255. Signed-off-by: Xueming Li --- drivers/net/mlx5/linux/mlx5_os.c | 11 +-- 1 file ch

[dpdk-dev] [PATCH v2 6/8] net/mlx5: fix internal root table flow priroity

2021-10-16 Thread Xueming Li
/mlx5: enlarge maximal flow priority") Signed-off-by: Xueming Li --- drivers/net/mlx5/mlx5_flow.c| 7 ++- drivers/net/mlx5/mlx5_flow.h| 4 ++-- drivers/net/mlx5/mlx5_flow_dv.c | 3 ++- 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/drivers/net/mlx5/mlx5_flow.c b/d

[dpdk-dev] [PATCH v2 7/8] net/mlx5: enable DevX Tx queue creation

2021-10-16 Thread Xueming Li
Signed-off-by: Xueming Li --- drivers/net/mlx5/linux/mlx5_os.c | 62 +- drivers/net/mlx5/mlx5.h | 2 + drivers/net/mlx5/mlx5_devx.c | 10 ++--- drivers/net/mlx5/mlx5_devx.h | 2 + drivers/net/mlx5/mlx5_flow.c | 74

[dpdk-dev] [PATCH v7 0/5] ethdev: introduce shared Rx queue

2021-10-16 Thread Xueming Li
d flag with device offload capability flag - add Rx domain - RxQ is shared when share group > 0 - update testpmd accordingly v7: - fix testpmd share group id allocation - change rx_domain to 16bits Xueming Li (5): ethdev: introduce shared Rx queue app/testpmd: new parameter to enable shared R

[dpdk-dev] [PATCH v7 2/5] app/testpmd: new parameter to enable shared Rx queue

2021-10-16 Thread Xueming Li
ly and update stream statistics correctly. Signed-off-by: Xueming Li --- app/test-pmd/config.c | 6 +- app/test-pmd/parameters.c | 13 + app/test-pmd/testpmd.c| 18 +++--- app/test-pmd/testpmd.h| 2 ++ doc/g

[dpdk-dev] [PATCH v7 1/5] ethdev: introduce shared Rx queue

2021-10-16 Thread Xueming Li
r port's configuration contradict to each other. Signed-off-by: Xueming Li --- doc/guides/nics/features.rst | 13 doc/guides/nics/features/default.ini | 1 + .../prog_guide/switch_representation.rst | 10 + doc/guides/rel_notes/release_21_11.rs

[dpdk-dev] [PATCH v7 3/5] app/testpmd: dump port info for shared Rx queue

2021-10-16 Thread Xueming Li
In case of shared Rx queue, polling any member port returns mbufs for all members. This patch dumps mbuf->port for each packet. Signed-off-by: Xueming Li --- app/test-pmd/util.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/app/test-pmd/util.c b/app/test-pmd/util.c index 51506e49

[dpdk-dev] [PATCH v7 4/5] app/testpmd: force shared Rx queue polled on same core

2021-10-16 Thread Xueming Li
Shared Rx queue must be polled on same core. This patch checks and stops forwarding if shared RxQ being scheduled on multiple cores. It's suggested to use same number of Rx queues and polling cores. Signed-off-by: Xueming Li --- app/test-pmd/config.c

[dpdk-dev] [PATCH v7 5/5] app/testpmd: add forwarding engine for shared Rx queue

2021-10-16 Thread Xueming Li
To support shared Rx queue, this patch introduces dedicate forwarding engine. The engine groups received packets by mbuf->port into sub-group, updates stream statistics and simply frees packets. Signed-off-by: Xueming Li --- app/test-pmd/meson.build| 1 + app/test-

[dpdk-dev] [PATCH v2 01/13] common/mlx5: support receive queue user index

2021-10-16 Thread Xueming Li
RQ user index is saved in CQE when packet received by RQ. Signed-off-by: Xueming Li --- drivers/common/mlx5/mlx5_prm.h | 8 +++- drivers/net/mlx5/mlx5_rxtx_vec_altivec.h | 8 drivers/regex/mlx5/mlx5_regex_fastpath.c | 2 +- 3 files changed, 12 insertions(+), 6 deletions

[dpdk-dev] [PATCH v2 00/13] net/mlx5: support shared Rx queue

2021-10-16 Thread Xueming Li
/mlx5: add shared Rx queue port datapath support Xueming Li (12): common/mlx5: support receive queue user index common/mlx5: support receive memory pool net/mlx5: fix Rx queue memory allocation return value net/mlx5: clean Rx queue code net/mlx5: split multiple packet Rq memory pool net/

[dpdk-dev] [PATCH v2 07/13] net/mlx5: move Rx queue reference count

2021-10-16 Thread Xueming Li
Rx queue reference count is counter of RQ, used on RQ table. To prepare for shared Rx queue, move it from rxq_ctrl to Rx queue private data. Signed-off-by: Xueming Li --- drivers/net/mlx5/mlx5_rx.h | 8 +- drivers/net/mlx5/mlx5_rxq.c | 173 +--- drivers

[dpdk-dev] [PATCH v2 05/13] net/mlx5: split multiple packet Rq memory pool

2021-10-16 Thread Xueming Li
Port info is invisible from shared Rx queue, split MPR mempool from device to Rx queue, also changed pool flag to mp_sc. Signed-off-by: Xueming Li --- drivers/net/mlx5/mlx5.c | 1 - drivers/net/mlx5/mlx5_rx.h | 4 +- drivers/net/mlx5/mlx5_rxq.c | 109

[dpdk-dev] [PATCH v2 04/13] net/mlx5: clean Rx queue code

2021-10-16 Thread Xueming Li
Removes unused rxq code. Signed-off-by: Xueming Li --- drivers/net/mlx5/mlx5_rxq.c | 8 ++-- 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/drivers/net/mlx5/mlx5_rxq.c b/drivers/net/mlx5/mlx5_rxq.c index 4036bcbe544..1cb99de1ae7 100644 --- a/drivers/net/mlx5/mlx5_rxq.c +++ b

[dpdk-dev] [PATCH v2 08/13] net/mlx5: move Rx queue hairpin info to private data

2021-10-16 Thread Xueming Li
Hairpin info of Rx queue can't be shared, moves to private queue data. Signed-off-by: Xueming Li --- drivers/net/mlx5/mlx5_rx.h | 4 ++-- drivers/net/mlx5/mlx5_rxq.c | 13 + drivers/net/mlx5/mlx5_trigger.c | 24 3 files changed, 19 inser

[dpdk-dev] [PATCH v2 03/13] net/mlx5: fix Rx queue memory allocation return value

2021-10-16 Thread Xueming Li
If error happened during Rx queue mbuf allocation, boolean value returned. From description, return value should be error number. This patch returns negative error number. Fixes: 0f20acbf5eda ("net/mlx5: implement vectorized MPRQ burst") Cc: akozy...@nvidia.com Signed-off-by:

[dpdk-dev] [PATCH v2 06/13] net/mlx5: split Rx queue

2021-10-16 Thread Xueming Li
To prepare shared RX queue, splits rxq data into shareable and private. Struct mlx5_rxq_priv is per queue data. Struct mlx5_rxq_ctrl is shared queue resources and data. Signed-off-by: Xueming Li --- drivers/net/mlx5/mlx5.c| 4 +++ drivers/net/mlx5/mlx5.h| 5 ++- drivers/net

[dpdk-dev] [PATCH v2 02/13] common/mlx5: support receive memory pool

2021-10-16 Thread Xueming Li
Adds DevX supports of PRM shared receive memory pool(RMP) object. RMP is used to support shared Rx queue. Multiple RQ could share same RMP. Memory buffers are supplied to RMP. This patch makes RMP RQ optional, created only if mlx5_devx_rq.rmp is set. Signed-off-by: Xueming Li --- drivers

[dpdk-dev] [PATCH v2 12/13] net/mlx5: support shared Rx queue

2021-10-16 Thread Xueming Li
Rx queues of all member ports as rxq object, used for receiving packets. Polling queue of any member ports returns packets of any member, mbuf->port is used to identify source port. Signed-off-by: Xueming Li --- doc/guides/nics/features/mlx5.ini | 1 + doc/guides/nics/mlx5.

[dpdk-dev] [PATCH v2 10/13] net/mlx5: move Rx queue DevX resource

2021-10-16 Thread Xueming Li
To support shared RX queue, move DevX RQ which is per queue resource to Rx queue private data. Signed-off-by: Xueming Li --- drivers/net/mlx5/linux/mlx5_verbs.c | 154 +++ drivers/net/mlx5/mlx5.h | 11 +- drivers/net/mlx5/mlx5_devx.c| 227

[dpdk-dev] [PATCH v2 09/13] net/mlx5: remove port info from shareable Rx queue

2021-10-16 Thread Xueming Li
To prepare for shared Rx queue, removes port info from shareable Rx queue control. Signed-off-by: Xueming Li --- drivers/net/mlx5/mlx5_devx.c | 2 +- drivers/net/mlx5/mlx5_mr.c | 7 --- drivers/net/mlx5/mlx5_rx.c | 15 +++ drivers/net/mlx5/mlx5_rx.h | 5

[dpdk-dev] [PATCH v2 13/13] net/mlx5: add shared Rx queue port datapath support

2021-10-16 Thread Xueming Li
user index setting, still read from rxq port number. Signed-off-by: Xueming Li Signed-off-by: Viacheslav Ovsiienko --- drivers/net/mlx5/mlx5_devx.c | 1 + drivers/net/mlx5/mlx5_rx.c | 1 + drivers/net/mlx5/mlx5_rxq.c | 3 ++- drivers/net

[dpdk-dev] [PATCH v2 11/13] net/mlx5: remove Rx queue data list from device

2021-10-16 Thread Xueming Li
Rx queue data list(priv->rxqs) can be replaced by Rx queue list(priv->rxq_privs), removes it and replace with universal wrapper API. Signed-off-by: Xueming Li --- drivers/net/mlx5/linux/mlx5_verbs.c | 7 ++--- drivers/net/mlx5/mlx5.c | 10 +-- drivers/net/mlx5/

[dpdk-dev] [PATCH v8 0/6] ethdev: introduce shared Rx queue

2021-10-18 Thread Xueming Li
d flag with device offload capability flag - add Rx domain - RxQ is shared when share group > 0 - update testpmd accordingly v7: - fix testpmd share group id allocation - change rx_domain to 16bits v8: - add new patch for testpmd to show device Rx domain ID and capability - new share_qid in RxQ c

[dpdk-dev] [PATCH v8 1/6] ethdev: introduce shared Rx queue

2021-10-18 Thread Xueming Li
is responsible for shared Rx queue consistency checks to avoid member port's configuration contradict to each other. Signed-off-by: Xueming Li --- doc/guides/nics/features.rst | 13 ++ doc/guides/nics/features/default.ini | 1 + .../prog_guide/switch_representa

[dpdk-dev] [PATCH v8 2/6] app/testpmd: dump device capability and Rx domain info

2021-10-18 Thread Xueming Li
Dump device capability and Rx domain ID if shared Rx queue is supported by device. Signed-off-by: Xueming Li --- app/test-pmd/config.c | 4 1 file changed, 4 insertions(+) diff --git a/app/test-pmd/config.c b/app/test-pmd/config.c index 9c66329e96e..c0616dcd2fd 100644 --- a/app/test-pmd

[dpdk-dev] [PATCH v8 3/6] app/testpmd: new parameter to enable shared Rx queue

2021-10-18 Thread Xueming Li
quot;shared-rxq" should be used which Rx only and update stream statistics correctly. Signed-off-by: Xueming Li --- app/test-pmd/config.c | 7 ++- app/test-pmd/parameters.c | 13 + app/test-pmd/testpmd.c| 20 +--- ap

[dpdk-dev] [PATCH v8 5/6] app/testpmd: force shared Rx queue polled on same core

2021-10-18 Thread Xueming Li
Shared Rx queue must be polled on same core. This patch checks and stops forwarding if shared RxQ being scheduled on multiple cores. It's suggested to use same number of Rx queues and polling cores. Signed-off-by: Xueming Li --- app/test-pmd/config.c

[dpdk-dev] [PATCH v8 4/6] app/testpmd: dump port info for shared Rx queue

2021-10-18 Thread Xueming Li
In case of shared Rx queue, polling any member port returns mbufs for all members. This patch dumps mbuf->port for each packet. Signed-off-by: Xueming Li --- app/test-pmd/util.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/app/test-pmd/util.c b/app/test-pmd/util.c index 51506e49

[dpdk-dev] [PATCH v8 6/6] app/testpmd: add forwarding engine for shared Rx queue

2021-10-18 Thread Xueming Li
To support shared Rx queue, this patch introduces dedicate forwarding engine. The engine groups received packets by mbuf->port into sub-group, updates stream statistics and simply frees packets. Signed-off-by: Xueming Li --- app/test-pmd/meson.build| 1 + app/test-

[dpdk-dev] [PATCH v8 0/6] ethdev: introduce shared Rx queue

2021-10-18 Thread Xueming Li
d flag with device offload capability flag - add Rx domain - RxQ is shared when share group > 0 - update testpmd accordingly v7: - fix testpmd share group id allocation - change rx_domain to 16bits v8: - add new patch for testpmd to show device Rx domain ID and capability - new share_qid in RxQ c

  1   2   3   4   5   6   7   8   9   10   >