On 2023/6/6 22:45, Ferruh Yigit wrote:
On 5/29/2023 3:26 AM, Jie Hai wrote:
Each stream has a read-only "disabled" field that control if this
stream should be used to forward. This field depends on states
of Rx/Tx queues, please see
commit 3c4426db54fc ("app/testpmd: do not poll stopped queues
> -Original Message-
> From: Wu, Jingjing
> Sent: Tuesday, June 6, 2023 2:41 PM
> To: Xing, Beilei
> Cc: dev@dpdk.org; Liu, Mingxia
> Subject: RE: [PATCH v10 00/14] net/cpfl: add hairpin queue support
>
>
>
> > -Original Message-
> > From: Xing, Beilei
> > Sent: Tuesday, J
On Wed, Jun 7, 2023 at 9:29 AM Zhirun Yan wrote:
>
> Rename rte_graph_work.h to rte_graph_work_common.h for supporting
> multiple graph worker model.
>
> Signed-off-by: Haiyue Wang
> Signed-off-by: Cunming Liang
> Signed-off-by: Zhirun Yan
You can keep this TAG in upcoming versions on the patc
On Wed, Jun 7, 2023 at 9:29 AM Zhirun Yan wrote:
>
> To support multiple graph worker model, split graph into common
> and default. Naming the current walk function as rte_graph_model_rtc
> cause the default model is RTC(Run-to-completion).
>
> Signed-off-by: Haiyue Wang
> Signed-off-by: Cunming
On Wed, Jun 7, 2023 at 9:30 AM Zhirun Yan wrote:
>
> Node process is a single and reusable block, move the code into an inline
> function.
>
> Signed-off-by: Haiyue Wang
> Signed-off-by: Cunming Liang
> Signed-off-by: Zhirun Yan
Acked-by: Jerin Jacob
On Wed, Jun 7, 2023 at 9:30 AM Zhirun Yan wrote:
>
> Add new get/set APIs to configure graph worker model which is used to
> determine which model will be chosen.
>
> Signed-off-by: Haiyue Wang
> Signed-off-by: Cunming Liang
> Signed-off-by: Zhirun Yan
>
> +/** Graph worker models */
> +/* If
This patchset supports querying information about ethdev.
The information includes MAC addresses, RxTx offload, flow ctrl,
Rx|Tx queue, firmware version, DCB, RSS, FEC, VLAN, etc.
v1->v2:
1. Fix incorrect argument of calloc.
2. Extract telemetry codes to a file.
3. Extract codes parsing port id as
The 'calloc' uses number as first argument, sizeof is generally wrong.
This patch fixes it.
Fixes: 8af559f94cef ("ethdev: support telemetry private dump")
Cc: sta...@dpdk.org
Signed-off-by: Jie Hai
---
lib/ethdev/rte_ethdev.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/l
This patch supports telemetry querying flow control info.
The command is like:
--> /ethdev/flow_ctrl,0
{
"/ethdev/flow_ctrl": {
"high_waterline": "0x0",
"low_waterline": "0x0",
"pause_time": "0x",
"send_xon": "off",
"mac_ctrl_frame_fwd": "off",
"rx_pause": "off",
"
From: Dengdui Huang
This patch support telemetry query MAC addresses for a specific port.
The command is like:
--> /ethdev/macs,0
{
"/ethdev/macs": [
"00:18:2D:00:00:79",
"00:18:2D:00:00:78",
"00:18:2D:00:00:77"
]
}
Signed-off-by: Dengdui Huang
Signed-off-by: Jie Hai
---
lib/
This patch extracts codes parsing port_id as a function.
The port id of 'int' or 'unsigned long' type passing as
'uint16_t' may cause truncation, fix it.
Signed-off-by: Jie Hai
---
lib/ethdev/rte_ethdev_telemetry.c | 95 ---
lib/ethdev/sff_telemetry.c| 4 +-
This patch support querying information of Rx queues.
The command is like:
--> /ethdev/rx_queue,0,0
{
"/ethdev/rx_queue": {
"mempool_name": "mb_pool_0",
"socket_id": 0,
"host_threshold": 0,
"prefetch_threshold": 0,
"writeback_threshold": 0,
"free_threshold": 32,
"rx_dr
Currently, Rx/Tx offloads are displayed in numeric format,
which is not easy to understand. This patch fixes it.
Signed-off-by: Jie Hai
---
lib/ethdev/rte_ethdev_telemetry.c | 64 ++-
1 file changed, 55 insertions(+), 9 deletions(-)
diff --git a/lib/ethdev/rte_ethdev
This patch support querying information of Tx queues.
The command is like:
--> /ethdev/tx_queue,0,0
{
"/ethdev/tx_queue": {
"host_threshold": 0,
"prefetch_threshold": 0,
"writeback_threshold": 0,
"rs_threshold": 32,
"free_threshold": 928,
"deferred_start": "off",
"offl
This patch extracts telemetry related codes in rte_ethdev.c
to a new file rte_ethdev_telemetry.c.
Signed-off-by: Jie Hai
---
lib/ethdev/meson.build| 1 +
lib/ethdev/rte_ethdev.c | 332
lib/ethdev/rte_ethdev_telemetry.c | 344 ++
This patch adds firmware version in telemetry info command.
An example is like:
--> /ethdev/info,0
{
"/ethdev/info": {
"name": ":bd:00.0",
"fw_version": "1.20.0.17",
}
}
Signed-off-by: Jie Hai
---
lib/ethdev/rte_ethdev_telemetry.c | 6 ++
1 file changed, 6 insertion
This patch supports querying RSS info by telemetry command.
The command is like:
--> /ethdev/rss_info,0
{
"/ethdev/rss_info": {
"rss_hf": "0x238c",
"rss_key_len": 40,
"rss_key": "6d5a56da255b0ec24167253d43a38fb0d0ca2b\
cbae7b30b477cb2da38030f20c6a42b73bbeac01fa"
}
}
This patch supports getting FEC information by telemetry.
The command is like:
--> /ethdev/fec,0
{
"/ethdev/fec": {
"fec_mode": "off",
"fec_capability": {
"10_Gbps": "off auto baser"
}
}
}
Signed-off-by: Jie Hai
---
lib/ethdev/rte_ethdev_telemetry.c | 139 ++
This patch supports querying DCB info.
The command is like:
--> /ethdev/dcb,0
{
"/ethdev/dcb": {
"tc_num": 1,
"tc0": {
"priority": 0,
"bw_percent": "100%",
"rxq_base": 0,
"txq_base": 0,
"nb_rxq": 4,
"nb_txq": 4
}
}
}
Signed-off-by: Jie Hai
---
This patch supports querying VLAN information by telemetry.
The command is like:
--> /ethdev/vlan,0
{
"/ethdev/vlan": {
"pvid": 0,
"hw_vlan_reject_tagged": 0,
"hw_vlan_reject_untagged": 0,
"hw_vlan_insert_pvid": 0,
"VLAN_STRIP": "off",
"VLAN_EXTEND": "off",
"QINQ_STRIP
18/04/2023 14:55, Bruce Richardson:
> On Tue, Apr 18, 2023 at 01:29:49PM +0200, Morten Brørup wrote:
> > From: Bruce Richardson [mailto:bruce.richard...@intel.com]
> > > On Tue, Apr 11, 2023 at 08:48:45AM +0200, Morten Brørup wrote:
> > > > + if (__extension__(__builtin_constant_p(n)) && n <=
On Wed, Jun 7, 2023 at 9:30 AM Zhirun Yan wrote:
>
> Add lcore_id for node to hold affinity core id and impl
> rte_graph_model_mcore_dispatch_lcore_affinity_set to set node affinity
> with specific lcore.
>
> Signed-off-by: Haiyue Wang
> Signed-off-by: Cunming Liang
> Signed-off-by: Zhirun Yan
On Wed, Jun 7, 2023 at 9:30 AM Zhirun Yan wrote:
>
> Add lcore_id for graph to hold affinity core id where graph would run on.
> Add bind/unbind API to set/unset graph affinity attribute. lcore_id will
> be set as MAX by default, it means not enable this attribute.
>
> Signed-off-by: Haiyue Wang
On Wed, Jun 7, 2023 at 9:30 AM Zhirun Yan wrote:
>
> Move clone_name() into graph_private.h as a common function for both node
> and graph to naming a new cloned object.
>
> Signed-off-by: Haiyue Wang
> Signed-off-by: Cunming Liang
> Signed-off-by: Zhirun Yan
Acked-by: Jerin Jacob
> From: Thomas Monjalon [mailto:tho...@monjalon.net]
> Sent: Wednesday, 7 June 2023 09.52
>
> 18/04/2023 14:55, Bruce Richardson:
> > On Tue, Apr 18, 2023 at 01:29:49PM +0200, Morten Brørup wrote:
> > > From: Bruce Richardson [mailto:bruce.richard...@intel.com]
> > > > On Tue, Apr 11, 2023 at 08:4
On Wed, Jun 7, 2023 at 9:30 AM Zhirun Yan wrote:
>
> This patch adds graph API for supporting to clone the graph object for
> a specified worker core. The new graph will also clone all nodes.
>
> Signed-off-by: Haiyue Wang
> Signed-off-by: Cunming Liang
> Signed-off-by: Zhirun Yan
> ---
> +/**
On Tue, Jun 6, 2023 at 10:19 AM Maxime Coquelin
wrote:
>
> This series introduces a new type of backend, VDUSE,
> to the Vhost library.
>
> VDUSE stands for vDPA device in Userspace, it enables
> implementing a Virtio device in userspace and have it
> attached to the Kernel vDPA bus.
>
> Once atta
On Wed, Jun 7, 2023 at 9:30 AM Zhirun Yan wrote:
>
> This patch introduces the task scheduler mechanism to enable dispatching
> tasks to another worker cores. Currently, there is only a local work
> queue for one graph to walk. We introduce a scheduler worker queue in
> each worker core for dispat
07/06/2023 10:03, Morten Brørup:
> > From: Thomas Monjalon [mailto:tho...@monjalon.net]
> > Sent: Wednesday, 7 June 2023 09.52
> >
> > 18/04/2023 14:55, Bruce Richardson:
> > > On Tue, Apr 18, 2023 at 01:29:49PM +0200, Morten Brørup wrote:
> > > > From: Bruce Richardson [mailto:bruce.richard...@in
On Wed, Jun 7, 2023 at 9:30 AM Zhirun Yan wrote:
>
> This patch enables to chose new scheduler model. Must define
> RTE_GRAPH_MODEL_SELECT before including rte_graph_worker.h
> to enable specific model choosing.
>
> Signed-off-by: Haiyue Wang
> Signed-off-by: Cunming Liang
> Signed-off-by: Zhiru
Hi Ferruh,
> -Original Message-
> From: Ferruh Yigit
> Sent: Saturday, June 3, 2023 3:44 AM
> To: Su, Simei ; tho...@monjalon.net;
> andrew.rybche...@oktetlabs.ru; Rybalchenko, Kirill
> ; Zhang, Qi Z
> Cc: dev@dpdk.org; Wu, Wenjun1
> Subject: Re: [RFC v3 0/3] add frequency adjustment su
On Wed, Jun 7, 2023 at 9:30 AM Zhirun Yan wrote:
>
> Add stats for cross-core dispatching scheduler if stats collection is
Use mcore dispatch model.(subject as well). be consistent in name usage.
> diff --git a/lib/graph/rte_graph_worker_common.h
> b/lib/graph/rte_graph_worker_common.h
> index
On 6/1/23 14:42, Denis Pryazhennikov wrote:
A new variable was added to efx_nic_cfg_s to detect and
report if FCS is supported by FW.
Signed-off-by: Roman Zhukov
Signed-off-by: Denis Pryazhennikov
Reviewed-by: Viacheslav Galaktionov
Acked-by: Andrew Rybchenko
Please, ensure that initial aut
On Wed, Jun 7, 2023 at 9:30 AM Zhirun Yan wrote:
>
> Add new parameter "model" to choose mcore dispatch or rtc model.
> And in dispatch model, the node will affinity to worker core successively.
>
> Note:
> RTE_GRAPH_MODEL_SELECT is set to GRAPH_MODEL_RTC by default. Must set
> model the same as R
On 6/1/23 14:42, Denis Pryazhennikov wrote:
Drivers cannot determine if received packet includes the FCS or not.
Only packets with an external port have the FCS included and functions
without link control privilege cannot determine the MAC configuration.
This patch is trying to make assumptions t
> From: Thomas Monjalon [mailto:tho...@monjalon.net]
> Sent: Wednesday, 7 June 2023 10.10
>
> 07/06/2023 10:03, Morten Brørup:
> > > From: Thomas Monjalon [mailto:tho...@monjalon.net]
> > > Sent: Wednesday, 7 June 2023 09.52
> > >
> > > 18/04/2023 14:55, Bruce Richardson:
> > > > On Tue, Apr 18, 2
On 6/1/23 14:42, Denis Pryazhennikov wrote:
Configurable Rx CRC stripping is allowed only if
running firmware variant supports it and if NIC is
configured with single PF per port and without VFs.
I'd like to double-check one thing. Doesn't it require fixes on
datapath to report correct length?
> From: Morten Brørup
> Sent: Wednesday, 7 June 2023 10.34
>
> > From: Thomas Monjalon [mailto:tho...@monjalon.net]
> > Sent: Wednesday, 7 June 2023 10.10
> >
[...]
> > What about doing a general comment at the top of the function,
> > with the assignment of the pointer at the end of the array:
18/04/2023 22:09, Morten Brørup:
> When getting objects from the mempool, the number of objects to get is
> often constant at build time.
>
> This patch adds another code path for this case, so the compiler can
> optimize more, e.g. unroll the copy loop when the entire request is
> satisfied from
Any update about this series?
09/03/2023 05:57, Honnappa Nagarahalli:
> 1) Patches 1/4, 2/4 - Few small corrections in mempool API documentation.
> 2) Patch 3/4 - The API for checking 'lcore ID is valid' is trivial,
>but it is the right thing to do.
> 3) Patch 4/4 - IMO, the 'lcore ID is valid
> From: Honnappa Nagarahalli [mailto:honnappa.nagaraha...@arm.com]
> Sent: Thursday, 9 March 2023 05.58
>
> Clarify that mempool cache flush API works with default mempool cache.
> It is applications responsibility to validate that the cache
> belongs to the specified mempool.
>
> Signed-off-by:
Hi Ferruh,
> -Original Message-
> From: Ferruh Yigit
> Sent: Saturday, June 3, 2023 3:53 AM
> To: Su, Simei ; tho...@monjalon.net;
> andrew.rybche...@oktetlabs.ru; Rybalchenko, Kirill
> ; Zhang, Qi Z
> Cc: dev@dpdk.org; Wu, Wenjun1
> Subject: Re: [RFC v3 3/3] examples/ptpclient: add fre
> From: Honnappa Nagarahalli [mailto:honnappa.nagaraha...@arm.com]
> Sent: Thursday, 9 March 2023 05.58
>
> Clarify that the mempool cache create and free API implementations
> work on user owned mempool caches.
>
> Signed-off-by: Honnappa Nagarahalli
> Reviewed-by: Kamalakshitha Aligeri
> Revi
在 2023/6/7 0:12, Ferruh Yigit 写道:
On 2/28/2023 2:21 AM, lihuisong (C) wrote:
在 2023/2/16 0:09, Ferruh Yigit 写道:
On 1/12/2023 2:44 AM, lihuisong (C) wrote:
在 2023/1/11 20:51, Ferruh Yigit 写道:
On 12/6/2022 9:26 AM, Huisong Li wrote:
The driver assignment was moved back at the end of the devi
在 2023/6/7 0:26, Ferruh Yigit 写道:
On 5/27/2023 3:11 AM, Huisong Li wrote:
This patchset fix some bugs and support attaching and detaching port
in primary and secondary.
Hi Huisong,
As commented on v4, I have some concerns on this set.
please see my reply.
The set does multiple ethdev/tes
For command VIRTCHNL_OP_REQUEST_QUEUES, polling access to the admin
queue has the issue of access overruns after disabling interrupt. That
results in FW disabling HW interrupt for protection purposes.
This patch fixes the issue by removing the polling admin queue processing
and replacing it with a
> From: Honnappa Nagarahalli [mailto:honnappa.nagaraha...@arm.com]
> Sent: Thursday, 9 March 2023 05.58
>
> Simple API to check if the lcore ID does not exceed the
> maximum number of lcores configured.
>
> Signed-off-by: Honnappa Nagarahalli
> Reviewed-by: Ruifeng Wang
> ---
> lib/eal/include
24/02/2023 19:10, Kamalakshitha Aligeri:
> From: = Morten Brørup
There is an equal sign inserted above.
>
> Zero-copy access to mempool caches is beneficial for PMD performance, and
> must be provided by the mempool library to fix [Bug 1052] without a
> performance regression.
>
> [Bug 1052]:
Added internal function to read model, input and reference
files with required error checks. This change fixes the
unchecked return value and improper use of negative value
issues reported by coverity scan for file read operations.
Coverity issue: 383742, 383743
Fixes: f6661e6d9a3a ("app/mldev: va
On 6/7/2023 8:41 AM, Jie Hai wrote:
> The 'calloc' uses number as first argument, sizeof is generally wrong.
> This patch fixes it.
>
> Fixes: 8af559f94cef ("ethdev: support telemetry private dump")
> Cc: sta...@dpdk.org
>
> Signed-off-by: Jie Hai
> ---
> lib/ethdev/rte_ethdev.c | 2 +-
> 1 fil
On 6/7/2023 8:41 AM, Jie Hai wrote:
> This patch extracts telemetry related codes in rte_ethdev.c
> to a new file rte_ethdev_telemetry.c.
>
> Signed-off-by: Jie Hai
<...>
> new file mode 100644
> index ..ec8e48877187
> --- /dev/null
> +++ b/lib/ethdev/rte_ethdev_telemetry.c
> @@ -0,
On 6/7/2023 8:41 AM, Jie Hai wrote:
> This patch extracts codes parsing port_id as a function.
> The port id of 'int' or 'unsigned long' type passing as
> 'uint16_t' may cause truncation, fix it.
>
> Signed-off-by: Jie Hai
> ---
> lib/ethdev/rte_ethdev_telemetry.c | 95 --
On 6/7/2023 8:41 AM, Jie Hai wrote:
> This patchset supports querying information about ethdev.
> The information includes MAC addresses, RxTx offload, flow ctrl,
> Rx|Tx queue, firmware version, DCB, RSS, FEC, VLAN, etc.
>
> v1->v2:
> 1. Fix incorrect argument of calloc.
> 2. Extract telemetry co
Enabled support for relocation of scratch memory. Added
support for extended arguments in load job descriptor to
handle scratch range start, end and base address.
Signed-off-by: Srikanth Yalavarthi
---
Depends-on: patch-126427 ("[v1,3/3] ml/cnxk: add support for 32 I/O per model")
drivers/ml/cn
On 6/5/23 02:24, Ivan Malov wrote:
From: Denis Pryazhennikov
Table's descriptor and fields' descriptors can be taken
by table ID using a new API.
In the near future, only the CT table is planned
to be used, so only fields that are required for these
purposes were added to the efx.
Signed-off-b
On 6/5/23 02:24, Ivan Malov wrote:
From: Denis Pryazhennikov
A "table" is structure used for lookups, consisting of a set of
entries which can be matched against an N-bit "request", to
return either a "hit" with an M-bit "response", or a "miss" if
there is no match. There are a number of HW tab
On 6/5/23 02:24, Ivan Malov wrote:
From: Denis Pryazhennikov
Implemented functions that help to fill user data for
manipulation with HW tables in the required format.
Signed-off-by: Denis Pryazhennikov
Reviewed-by: Ivan Malov
Reviewed-by: Andy Moreton
---
drivers/net/sfc/meson.build | 1
> From: Thomas Monjalon [mailto:tho...@monjalon.net]
> Sent: Wednesday, 7 June 2023 12.32
>
> 24/02/2023 19:10, Kamalakshitha Aligeri:
> > From: = Morten Brørup
>
> There is an equal sign inserted above.
Could be removed while applying?
>
> >
> > Zero-copy access to mempool caches is benefici
On 6/5/23 02:24, Ivan Malov wrote:
From: Denis Pryazhennikov
Table's descriptor and fields' descriptors can be taken
by table ID using a new API.
In the near future, only the CT table is planned
to be used, so only fields that are required for these
purposes were added to the efx.
Signed-off-b
On 6/5/23 02:24, Ivan Malov wrote:
From: Denis Pryazhennikov
The patch adds APIs to initialise, manipulate and finalise
HW tables API-specific context in NIC control structure.
The context itself will be used to store HW tables-related info,
like table descriptors and field descriptors.
Signed
On 6/5/23 02:24, Ivan Malov wrote:
On EF100 hardware, match-action engine (MAE) can be equipped
with an assistance table for connection tracking (CT). In it,
an entry key is a set of exact match fields: an EtherType, a
pair of IP addresses, a L4 protocol ID and a pair of L4 port
numbers. An entry
> -Original Message-
> From: Jerin Jacob
> Sent: Wednesday, June 7, 2023 4:15 PM
> To: Yan, Zhirun
> Cc: dev@dpdk.org; jer...@marvell.com; kirankum...@marvell.com;
> ndabilpu...@marvell.com; step...@networkplumber.org;
> pbhagavat...@marvell.com; Liang, Cunming ; Wang,
> Haiyue ; mattia
> -Original Message-
> From: Jerin Jacob
> Sent: Wednesday, June 7, 2023 3:43 PM
> To: Yan, Zhirun
> Cc: dev@dpdk.org; jer...@marvell.com; kirankum...@marvell.com;
> ndabilpu...@marvell.com; step...@networkplumber.org;
> pbhagavat...@marvell.com; Liang, Cunming ; Wang,
> Haiyue ; mattia
> -Original Message-
> From: Jerin Jacob
> Sent: Wednesday, June 7, 2023 4:27 PM
> To: Yan, Zhirun
> Cc: dev@dpdk.org; jer...@marvell.com; kirankum...@marvell.com;
> ndabilpu...@marvell.com; step...@networkplumber.org;
> pbhagavat...@marvell.com; Liang, Cunming ; Wang,
> Haiyue ; mattia
07/06/2023 14:04, Morten Brørup:
> > From: Thomas Monjalon [mailto:tho...@monjalon.net]
> > Sent: Wednesday, 7 June 2023 12.32
> >
> > 24/02/2023 19:10, Kamalakshitha Aligeri:
> > > From: = Morten Brørup
> >
> > There is an equal sign inserted above.
>
> Could be removed while applying?
Better
On Wed, Jun 7, 2023 at 9:30 AM Zhirun Yan wrote:
>
> Update graph documentation to introduce new multicore dispatch model.
Please squash this to relevant implementation patches, No need for
separate patch. This is the contribution guideline followed.
>
> Signed-off-by: Haiyue Wang
> Signed-off-
On EF100 hardware, match-action engine (MAE) can be equipped
with an assistance table for connection tracking (CT). In it,
an entry key is a set of exact match fields: an EtherType, a
pair of IP addresses, a L4 protocol ID and a pair of L4 port
numbers. An entry response can provide matching packet
From: Denis Pryazhennikov
Future patches will add an implementation of MCDI Table
Access API in libefx. This patch adds a way to determine
if this API is supported.
Signed-off-by: Denis Pryazhennikov
Reviewed-by: Ivan Malov
Reviewed-by: Andy Moreton
---
drivers/common/sfc_efx/base/efx.h
From: Denis Pryazhennikov
New MCDI Table Access API allows management of
the HW tables' content.
This part of API helps to list all supported tables.
In the near future, only the CT table is planned
to be used, so only one identifier for this table
was added to the efx.
New table IDs will be adde
From: Denis Pryazhennikov
Extend MCDI macros to manipulate with fields in indexed QWORDs.
Signed-off-by: Denis Pryazhennikov
Reviewed-by: Ivan Malov
Reviewed-by: Viacheslav Galaktionov
---
drivers/common/sfc_efx/base/efx_mcdi.h | 4
1 file changed, 4 insertions(+)
diff --git a/drivers/
From: Denis Pryazhennikov
Table's descriptor and fields' descriptors can be taken
by table ID using a new API.
In the near future, only the CT table is planned
to be used, so only fields that are required for these
purposes were added to the efx.
Signed-off-by: Denis Pryazhennikov
Reviewed-by:
From: Denis Pryazhennikov
API allows to insert data to any supported HW table.
Signed-off-by: Denis Pryazhennikov
Reviewed-by: Ivan Malov
Reviewed-by: Viacheslav Galaktionov
Reviewed-by: Andy Moreton
---
drivers/common/sfc_efx/base/efx.h | 16 +
drivers/common/sfc_efx/base/efx_tab
From: Denis Pryazhennikov
API allows to delete entry from any supported HW table.
Signed-off-by: Denis Pryazhennikov
Reviewed-by: Ivan Malov
Reviewed-by: Andy Moreton
---
drivers/common/sfc_efx/base/efx.h | 11
drivers/common/sfc_efx/base/efx_table.c | 77 +
From: Denis Pryazhennikov
A "table" is structure used for lookups, consisting of a set of
entries which can be matched against an N-bit "request", to
return either a "hit" with an M-bit "response", or a "miss" if
there is no match. There are a number of HW tables of various
types that could be us
From: Denis Pryazhennikov
Implemented functions that help to fill user data for
manipulation with HW tables in the required format.
Signed-off-by: Denis Pryazhennikov
Reviewed-by: Ivan Malov
Reviewed-by: Andy Moreton
---
drivers/net/sfc/meson.build | 1 +
drivers/net/sfc/sfc_tbls.c | 147
From: Denis Pryazhennikov
The patch adds APIs to initialise, manipulate and finalise
HW tables API-specific context in NIC control structure.
The context itself will be used to store HW tables-related info,
like table descriptors and field descriptors.
Signed-off-by: Denis Pryazhennikov
Reviewe
From: Denis Pryazhennikov
The new API allows to manipulate entries in
the HW Conntrack table.
It uses a new Table Access API as a backend.
Signed-off-by: Denis Pryazhennikov
Reviewed-by: Ivan Malov
Reviewed-by: Andy Moreton
---
drivers/net/sfc/meson.build | 1 +
drivers/net/sfc/sfc_mae_ct
Keep NULL object check in one place rather than repeat it in
all of the callers. That should make the code easier on eyes.
Future code for additional object types will follow this way.
Signed-off-by: Ivan Malov
Reviewed-by: Andy Moreton
---
drivers/net/sfc/sfc_mae.c | 78 +++
Doing so is useful to facilitate driver-internal flow rework.
Signed-off-by: Ivan Malov
Reviewed-by: Andy Moreton
---
drivers/net/sfc/sfc_flow.c | 42 ++
drivers/net/sfc/sfc_flow.h | 9
2 files changed, 42 insertions(+), 9 deletions(-)
diff --git a
In the case of VF <--> VF representor pairs, these flows can
only collect VF traffic, so let them use generic flow action
PORT_REPRESENTOR, as part of re-using generic flow mechanism.
Currently, it does not allow to access VF representors since
they have no unique HW logical ports (m-ports). They
At the moment, driver-internal flow rules are provisioned by
functions that are separate from the generic flow management
framework. In order to use the latter for such rules, extend
it accordingly. This will be actually used in the next patch.
Signed-off-by: Ivan Malov
Reviewed-by: Andy Moreton
Doing so helps to consolidate flow operation and ensure that
every FW-allocatable resource can be shared by several flows.
That is useful in the light of upcoming support for embedded
conntrack assistance, where several flows will ideally share
everything but unique 5-tuple entries in the conntrack
Doing so will facilitate easier code restructure in the next
patches required to rework flow housekeeping and indirection.
Signed-off-by: Ivan Malov
Reviewed-by: Andy Moreton
---
drivers/net/sfc/sfc_flow.c | 47 +-
drivers/net/sfc/sfc_mae.c | 58
Logically, starting flow counter streaming belongs in action
set enable path. Move it there as a preparation step for the
patch that will make action rules shareable by several flows.
Signed-off-by: Ivan Malov
Reviewed-by: Andy Moreton
---
drivers/net/sfc/sfc_mae.c | 22 --
Flows provided by match-action engine (MAE) will be reworked
by the next patch to make action rule (AR) entries shareable.
To ensure correct AR specification comparison on attach path,
augment the way outer rules (OR) are handled, namely, how OR
IDs are indicated in a AR specification on parse and
Later patches of the series provide support for HW conntrack
assistance. With the new feature, multiple flows that differ
in the 5-tuple match fields but are otherwise identical will
be able to share all FW-allocatable objects except for those
of the conntrack table. That will boost flow engine cap
The DPDK driver would like to have a means to make a copy of
the action rule match specification before trying to dissect
it to possibly move out the per-connection 5-tuple data from
it to build up an entry in the HW conntrack assistance table.
Making such a copy at the end of parsing should be pr
Later patches of the series provide support for HW conntrack
assistance in the DPDK driver. In order to detect flows that
are subject to such assistance, the driver needs to retrieve
5-tuple match data from an already constructed specification.
A dedicated API to selectively read back match criter
EF100 match-action engine (MAE) has conntrack assistance
table. A hit in this table can provide a mark value for
the following lookup stage, which is action rule lookup.
Provide support for setting match on conntrack mark.
Signed-off-by: Ivan Malov
Reviewed-by: Andy Moreton
---
drivers/common/
Such can be initiated when a packet hits an outer rule.
Signed-off-by: Ivan Malov
Reviewed-by: Andy Moreton
---
drivers/common/sfc_efx/base/efx.h | 9 +
drivers/common/sfc_efx/base/efx_impl.h | 1 +
drivers/common/sfc_efx/base/efx_mae.c | 26 ++
drivers/c
On EF100 hardware, match-action engine (MAE) can be equipped
with an assistance table for connection tracking (CT). In it,
an entry key is a set of exact match fields: an EtherType, a
pair of IP addresses, a L4 protocol ID and a pair of L4 port
numbers. An entry response can provide matching packet
NAT goes after IP TTL decrement. It can operate
on the outermost frame only. In the case of
prior decapsulation, that maps to the frame
which was (originally) the inner one. Input
data for the action comes from the response
of the HW conntrack assistance table hit.
Signed-off-by: Ivan Malov
Revie
For this offload to work, the innermost pattern items must
provide the full set of exact match criteria, which are as
follows: EtherType, IP DST, IP SRC, TP protocol ID, TP DST
and TP SRC, where the protocol types can be autodetected.
The offload requires that the IPv4 and the TP actions be
reques
Doing so facilitates rearrangements of the next patch needed
to make software counter objects shareable across many flows.
Signed-off-by: Ivan Malov
Reviewed-by: Andy Moreton
---
drivers/net/sfc/sfc_mae.c | 14 +++---
drivers/net/sfc/sfc_mae.h | 14 +++---
driver
Such rework is needed to prepare for INDIRECT action support
and in order to align with the latest HW support perspective.
Currently, the driver supports only one counter per flow. It
was once thought that MAE would support multiple counters in
one action set. That was partly envisaged in code and
Indirect count action is useful to applications that
need to gather aggregated statistics for many flows.
Signed-off-by: Ivan Malov
Reviewed-by: Andy Moreton
---
doc/guides/nics/sfc_efx.rst| 2 +
doc/guides/rel_notes/release_23_07.rst | 3 +
drivers/net/sfc/sfc.h
Doing so is required to disambiguate counters of different
types supported by the match-action engine (MAE) on EF100.
Currently, the code only supports action rule counters,
but MAE may also support conntrack assistance counters.
Add type-aware allocate and free MCDI handlers and
extend reporting
Doing so assists adding support for additional counter types.
Current implementation is only aware of action rule counters
that are supported by the match-action engine (MAE) on EF100
NICs, but MAE may also support conntrack assistance counters.
Signed-off-by: Ivan Malov
Reviewed-by: Andy Moreto
Counters that can be referenced by HW conntrack assistance
table work similar to those of the action rules. However,
their IDs belong to a separate (CT-specific) namespace.
These are 1-bit saturating counters with no byte count.
Signed-off-by: Ivan Malov
Reviewed-by: Andy Moreton
---
drivers/c
These are 1-bit saturating counters which can only be useful
to tell whether a given flow rule has offloaded some packets
since the last query. Byte count is never provided for these.
Signed-off-by: Ivan Malov
Reviewed-by: Andy Moreton
---
drivers/net/sfc/sfc_flow.h| 2 +
drivers/net/
1 - 100 of 217 matches
Mail list logo