Reviewed-by: Ivan Malov
Thank you.
On Fri, 27 Sep 2024, Stephen Hemminger wrote:
If compiler detection of use-after-free is enabled then this drivers
debug messages will cause warnings. Change to move debug message
before the object is freed.
Bugzilla ID: 1551
Fixes: 55c1238246d5 ("ne
Support the use of indirect counters in so-called SWITCH
rules (second stage lookup and steering after supposed
decapsulation) in tunnel offload. An indirect counter
can either come instead of an inline counter or, when
the latter is a conntrack-assisted counter, follow it.
Signed-off-by: Ivan
Hi,
On Wed, 24 Apr 2024, Dariusz Sosnowski wrote:
-Original Message-
From: Ivan Malov
Sent: Tuesday, April 23, 2024 13:44
To: Jie Hai
Cc: Yuying Zhang ; Aman Singh
; NBU-Contact-Thomas Monjalon (EXTERNAL)
; ferruh.yi...@amd.com >> Ferruh Yigit
; andrew.rybche...@oktetlabs.r
Hi,
Please see below.
On Tue, 23 Apr 2024, Jie Hai wrote:
Hi, Ivan Malov,
Sorry for the late reply.
On 2024/4/10 21:19, Ivan Malov wrote:
Hi Jie,
Consider the following examples:
1) flow create 0 ingress pattern eth / ipv4 proto is 17 / udp / end \
actions queue index 1 / end
2) flow
Hi Jie,
Consider the following examples:
1) flow create 0 ingress pattern eth / ipv4 proto is 17 / udp / end \
actions queue index 1 / end
2) flow create 0 ingress pattern eth / ipv4 / udp / end \
actions queue index 1 / end
Generally speaking, these two rules might be equivalent, with "pr
Hi Dariusz,
I appreciate your response. All to the point.
I have to confess my question was inspired by the 23.11 merge commit
in OVS mailing list. I first thought that an obvious consumer for
the async flow API could have been OVS but saw no usage of it in
the current code. It was my impression
Hi Dariusz,
I appreciate the proposal. You say that a reference PMD implementation
will be made available for 24.03 release. What about the applications?
Is this supposed to go to upstream code of some applications?
Thank you.
On Thu, 28 Dec 2023, Dariusz Sosnowski wrote:
Hi Stephen,
+/**
+
Hi Stephen,
On Sat, 11 Nov 2023, Stephen Hemminger wrote:
While examining the use of VLA in DPDK, ran into a bug in sfc driver.
If DPDK is built with -Wvla, then the RTE_BUILD_BUG_ON() macro won't work
as written. Experimenting with a better more portable version of that macro
as:
#def
strdup(str);
+ if (str2 == NULL)
+ return nb_item;
cur = strtok_r(str2, ",", &tmp);
while (cur != NULL) {
parsed_items[nb_item] = get_ptype(cur);
--
2.17.1
Acked-by: Ivan Malov
Thank you.
Hi,
(minor question below)
On Fri, 10 Nov 2023, Huisong Li wrote:
Currently, testpmd set tunnel TSO offload even if fail to get dev_info.
In this case, the 'tx_offload_capa' in dev_info is a random value,
Fixes: 6f51deb903b2 ("app/testpmd: check status of getting ethdev info")
Cc: sta...@dpdk
l be UINT32_MAX.
+*/
+ uint32_t max_rx_bufsize;
uint32_t max_rx_pktlen; /**< Maximum configurable length of Rx pkt. */
/** Maximum configurable size of LRO aggregated packet. */
uint32_t max_lro_pkt_size;
--
2.33.0
Other than that,
Acked-by: Ivan Malov
Thank you.
On Sat, 30 Sep 2023, Andrew Rybchenko wrote:
On 9/27/23 13:36, Ivan Malov wrote:
Packet replay enables users to leverage multiple counters in
one flow and allows to request delivery to multiple ports.
A given flow rule may use either one inline count action
and multiple indirect counters or
create action_id 239 transfer action count / end
flow create 0 transfer pattern represented_port ethdev_port_id is 0 / end \
actions indirect 239 / port_representor port_id 0 / indirect 239 / \
port_representor port_id 1 / end
and the likes.
Signed-off-by: Ivan Malov
Reviewed-by: Andy Moreton
create action_id 239 transfer action count / end
flow create 0 transfer pattern represented_port ethdev_port_id is 0 / end \
actions indirect 239 / port_representor port_id 0 / indirect 239 / \
port_representor port_id 1 / end
and the likes.
Signed-off-by: Ivan Malov
Reviewed-by: Andy Moreton
Hi Michael,
Very interesting proposal. However, could you please
provide a use case example for this feature and also
provide an example of where such value could come
from, theoretically.
Thank you.
On Tue, 22 Aug 2023, Michael Baum wrote:
Add support for matching random value using new "rte
create action_id 239 transfer action count / end
flow create 0 transfer pattern represented_port ethdev_port_id is 0 / end \
actions indirect 239 / port_representor port_id 0 / indirect 239 / \
port_representor port_id 1 / end
and the likes.
Signed-off-by: Ivan Malov
Tested-by: Denis
create action_id 239 transfer action count / end
flow create 0 transfer pattern represented_port ethdev_port_id is 0 / end \
actions indirect 239 / port_representor port_id 0 / indirect 239 / \
port_representor port_id 1 / end
and the likes.
Signed-off-by: Ivan Malov
---
doc/guides/rel_notes
Parsing inline action VXLAN_ENCAP repeating in many flows is
expensive, so offer support for its indirect version. Query
operation is not supported for this action. The next patch
will add a means to update the encapsulation header data.
Signed-off-by: Ivan Malov
Reviewed-by: Andy Moreton
Such updates are helpful as they let applications avoid
costly flow re-insertions when the header data changes.
Signed-off-by: Ivan Malov
Reviewed-by: Andy Moreton
---
drivers/common/sfc_efx/base/efx.h | 9 +++
drivers/common/sfc_efx/base/efx_mae.c | 80
drivers
A failure to allocate a bounce buffer for encap. header
parsing results in falling to the error path but does
not set an appropriate error code. Fix this.
Fixes: 1bbd1ec2348a ("net/sfc: support action VXLAN encap in MAE backend")
Cc: sta...@dpdk.org
Signed-off-by: Ivan Malov
Reviewe
Hi Tomer,
OK, let's see what others will say.
Minor comment below.
On Tue, 8 Aug 2023, Tomer Shmilovich wrote:
Hi Ivan, please see inline comments.
Thanks, Tomer
-Original Message-
From: Ivan Malov
Sent: Tuesday, 8 August 2023 2:03
To: Tomer Shmilovich
Cc: Ori Kam ; NBU-Co
Hi Tomer,
This is a good proposal overall, but it's a bit questionable
with regard to the transfer domain and precisely group 0.
Say, the user starts a DPDK application and plugs a PF to it,
also plugs a representor for a VF. If I'm not mistaken, in
this case, default behaviour is hardly "undefi
Hi,
Please see my notes below.
On Mon, 7 Aug 2023, Xueming Li wrote:
The new symmetric hash function swap src/dst L3 address and
L4 ports automatically by sorting.
Signed-off-by: Xueming Li
---
lib/ethdev/rte_flow.h | 5 +
1 file changed, 5 insertions(+)
diff --git a/lib/ethdev/rte_flow.
Hi Ferruh,
PSB
Thank you.
On Fri, 21 Jul 2023, Ferruh Yigit wrote:
Drivers start/stop device queues on port start/stop, but not all drivers
update queue state accordingly.
This becomes more visible if a specific queue stopped explicitly and
port stopped/started later, in this case although a
Hi Ferruh,
The commit log says "commit [1]" and "commit [2]" but
does not seem to provide the URLs for the [1] and [2].
What are these resources? I'd like to know.
Thank you.
On Fri, 21 Jul 2023, Ferruh Yigit wrote:
Drivers start/stop device queues on port start/stop, but not all drivers
upda
PING
On Tue, 13 Jun 2023, Ivan Malov wrote:
Signed-off-by: Ivan Malov
---
.mailmap | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.mailmap b/.mailmap
index 8e3940a253..d97cdc670c 100644
--- a/.mailmap
+++ b/.mailmap
@@ -105,7 +105,7 @@ Andriy Berestovskyy
Andrzej
ned-off-by: Ivan Malov
---
drivers/net/sfc/sfc_mae.c | 7 +--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/drivers/net/sfc/sfc_mae.c b/drivers/net/sfc/sfc_mae.c
index 60a54fd425..f5fe55b46f 100644
--- a/drivers/net/sfc/sfc_mae.c
+++ b/drivers/net/sfc/sfc_mae.c
@@ -3460,
Such check is already done at an earlier point, in
sfc_flow_parse_pattern(), so remove it from IPv4
item parser. Doing so should fix Coverity issue.
Coverity issue: 395526
Fixes: f79ce621e963 ("net/sfc: support IPv4 fragment matching in transfer
rules")
Cc: sta...@dpdk.org
Signed-of
On Fri, 23 Jun 2023, Artemii Morozov wrote:
This API allows to get number of installed filters. This will
be used in the future patches.
Signed-off-by: Artemii Morozov
Acked-by: Andrew Rybchenko
Acked-by: Ivan Malov
Thank you.
---
drivers/common/sfc_efx/base/ef10_filter.c | 20
ucture future
patch sets, for some other features yet to be supported.
Thank you.
On Mon, 19 Jun 2023, Ferruh Yigit wrote:
On 6/7/2023 2:02 PM, Ivan Malov wrote:
From: Denis Pryazhennikov
New MCDI Table Access API allows management of
the HW tables' content.
This part of API helps to list a
Signed-off-by: Ivan Malov
---
.mailmap | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.mailmap b/.mailmap
index 8e3940a253..d97cdc670c 100644
--- a/.mailmap
+++ b/.mailmap
@@ -105,7 +105,7 @@ Andriy Berestovskyy
Andrzej Ostruszka
Andy Gospodarek
Andy Green
-Andy
Jun 2023, Zhang, Qi Z wrote:
-Original Message-----
From: Ivan Malov
Sent: Monday, June 12, 2023 11:33 PM
To: Zhang, Qi Z
Cc: tho...@monjalon.net; or...@nvidia.com; david.march...@redhat.com;
Richardson, Bruce ; jer...@marvell.com;
ferruh.yi...@amd.com; Mcnamara, John ;
Zhang, Helin ; tec
Hi,
Thanks for sending the RFC. Sounds interesting.
My impression is that this API is rather low-level, so the
question is how does the application find a vendor-neutral
approach to discover and use specific table to do some job?
For example, the application needs to do some tunnel match
and de
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
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
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
of counter limits accordingly.
Signed-off-by: Ivan Malov
Reviewed-by: Andy Moreton
---
drivers/common/sfc_efx/base/efx.h | 39 +++-
drivers/common/sfc_efx/base/efx_impl.h | 2 +-
drivers/common/sfc_efx/base/efx_mae.c | 120 -
drivers/common/sfc_efx
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
and naming.
But HW support for the feature is no longer planned in EF100.
The code also assumes that a counter object cannot be shared.
This assumption is outdated. The driver may support this now
via action of type INDIRECT provided by generic flow library.
Signed-off-by: Ivan Malov
Reviewed-by
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
when the target header is an IPv4-based one.
Signed-off-by: Ivan Malov
Reviewed-by: Andy Moreton
---
doc/guides/nics/features/sfc.ini | 4 ++
doc/guides/nics/sfc_efx.rst| 8 +++
doc/guides/rel_notes/release_23_07.rst | 15 +
drivers/net/sfc/sfc_mae.c | 77
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
likelihood of reusing AR entries and improves the
total flow engine capacity. Make use of that.
NAT and CT counters will be supported later.
Signed-off-by: Ivan Malov
Reviewed-by: Andy Moreton
---
drivers/net/sfc/sfc_flow.h | 4 +
drivers/net/sfc/sfc_mae.c | 314
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
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
criteria will
make a neat solution to keep the implementation less complex.
Signed-off-by: Ivan Malov
Reviewed-by: Andy Moreton
---
drivers/common/sfc_efx/base/efx.h | 10 ++
drivers/common/sfc_efx/base/efx_mae.c | 131 ++
drivers/common/sfc_efx/version.map| 1 +
3
preferred
over maintaining DPDK-level structures because the resulting
code is easier on eyes and less prone to errors in this case.
Signed-off-by: Ivan Malov
Reviewed-by: Andy Moreton
---
drivers/common/sfc_efx/base/efx.h | 7 +++
drivers/common/sfc_efx/base/efx_mae.c | 26
capacity.
To prepare for that, action rules of the match-action engine
have to be turned into shareable objects, from SW standpoint.
Signed-off-by: Ivan Malov
Reviewed-by: Andy Moreton
---
drivers/net/sfc/sfc_flow.c | 4 +-
drivers/net/sfc/sfc_flow.h | 13 +-
drivers/net/sfc/sfc_mae.c | 362
disable.
Signed-off-by: Ivan Malov
Reviewed-by: Andy Moreton
---
drivers/net/sfc/sfc_mae.c | 44 ---
1 file changed, 32 insertions(+), 12 deletions(-)
diff --git a/drivers/net/sfc/sfc_mae.c b/drivers/net/sfc/sfc_mae.c
index 37292f5d7c..624be53269 100644
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
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
conntrack table.
Signed-off-by: Ivan Malov
Reviewed-by: Andy Moreton
---
drivers/net/sfc/sfc_mae.c| 186 +++
drivers/net/sfc/sfc_mae.h| 51 ++---
drivers/net/sfc/sfc_repr_proxy.c | 38 ++-
drivers/net/sfc/sfc_repr_proxy.h | 2 +-
4 files changed
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
. They all sit
on the same (representor proxy) m-port, while demultiplexing
of traffic uses ingress (VF) m-port value in packet metadata.
Traffic from arbitrary sources cannot be identified this way.
But, for VF traffic, it should be right to make an exception.
Signed-off-by: Ivan Malov
Revie
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
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
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
Reviewed-by: Ivan Malov
Reviewed-by: Andy Moreton
---
drivers/net/sfc/meson.build | 4 +-
drivers/net/sfc/sfc.c| 18 +-
drivers/net/sfc/sfc.h| 2 +
drivers/net/sfc/sfc_tbl_meta.c | 71
drivers/net/sfc/sfc_tbl_meta.h | 37
drivers
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
than one matches.
BCAM tables don't support "mask" and "priority", so the
corresponding fields must be zeroed.
Signed-off-by: Denis Pryazhennikov
Reviewed-by: Ivan Malov
Reviewed-by: Andy Moreton
---
drivers/net/sfc/sfc_tbls.h | 69 ++
1
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
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
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
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
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
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
functions to manipulate MCDI table fields
net/sfc: attach to HW table API
net/sfc: add API to manage HW Conntrack table
Ivan Malov (23):
net/sfc: make entry pointer optional in MAE resource helpers
net/sfc: turn flow create/destroy methods into lock wrappers
net/sfc: let driver-internal
Hi Stephen,
On Mon, 5 Jun 2023, Stephen Hemminger wrote:
On Tue, 6 Jun 2023 00:30:18 +0400 (+04)
Ivan Malov wrote:
Hi Stephen, Thomas,
Thanks for responding. PSB.
On Mon, 5 Jun 2023, Stephen Hemminger wrote:
On Mon, 05 Jun 2023 18:03:14 +0200
Thomas Monjalon wrote:
05/06/2023 16:29
Hi Stephen, Thomas,
Thanks for responding. PSB.
On Mon, 5 Jun 2023, Stephen Hemminger wrote:
On Mon, 05 Jun 2023 18:03:14 +0200
Thomas Monjalon wrote:
05/06/2023 16:29, Ivan Malov:
Sorry, I missed your question. See below.
On Mon, 5 Jun 2023, Thomas Monjalon wrote:
05/06/2023 16:03
Sorry, I missed your question. See below.
On Mon, 5 Jun 2023, Thomas Monjalon wrote:
05/06/2023 16:03, Ivan Malov:
Hi Thomas,
Thanks for responding. Please see below.
On Mon, 5 Jun 2023, Thomas Monjalon wrote:
Hello,
05/06/2023 15:09, Ivan Malov:
Dear community,
Is there any means in
On Mon, 5 Jun 2023, Thomas Monjalon wrote:
05/06/2023 16:03, Ivan Malov:
Hi Thomas,
Thanks for responding. Please see below.
On Mon, 5 Jun 2023, Thomas Monjalon wrote:
Hello,
05/06/2023 15:09, Ivan Malov:
Dear community,
Is there any means in DPDK to discover relationship between
Hi Thomas,
Thanks for responding. Please see below.
On Mon, 5 Jun 2023, Thomas Monjalon wrote:
Hello,
05/06/2023 15:09, Ivan Malov:
Dear community,
Is there any means in DPDK to discover relationship between
network/physical ports of the given adapter/board and
etdevs deployed in DPDK
Dear community,
Is there any means in DPDK to discover relationship between
network/physical ports of the given adapter/board and
etdevs deployed in DPDK application on top of it?
For example, in Linux, there are facilities like
/sys/class/net//phys_port_name
/sys/class/net//dev_port
and
d
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
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
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
of counter limits accordingly.
Signed-off-by: Ivan Malov
Reviewed-by: Andy Moreton
---
drivers/common/sfc_efx/base/efx.h | 39 +++-
drivers/common/sfc_efx/base/efx_impl.h | 2 +-
drivers/common/sfc_efx/base/efx_mae.c | 120 -
drivers/common/sfc_efx
and naming.
But HW support for the feature is no longer planned in EF100.
The code also assumes that a counter object cannot be shared.
This assumption is outdated. The driver may support this now
via action of type INDIRECT provided by generic flow library.
Signed-off-by: Ivan Malov
Reviewed-by
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
when the target header is an IPv4-based one.
Signed-off-by: Ivan Malov
Reviewed-by: Andy Moreton
---
doc/guides/nics/features/sfc.ini | 4 ++
doc/guides/nics/sfc_efx.rst| 8 +++
doc/guides/rel_notes/release_23_07.rst | 15 +
drivers/net/sfc/sfc_mae.c | 77
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
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
likelihood of reusing AR entries and improves the
total flow engine capacity. Make use of that.
NAT and CT counters will be supported later.
Signed-off-by: Ivan Malov
Reviewed-by: Andy Moreton
---
drivers/net/sfc/sfc_flow.h | 4 +
drivers/net/sfc/sfc_mae.c | 314
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
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
criteria will
make a neat solution to keep the implementation less complex.
Signed-off-by: Ivan Malov
Reviewed-by: Andy Moreton
---
drivers/common/sfc_efx/base/efx.h | 10 ++
drivers/common/sfc_efx/base/efx_mae.c | 131 ++
drivers/common/sfc_efx/version.map| 1 +
3
preferred
over maintaining DPDK-level structures because the resulting
code is easier on eyes and less prone to errors in this case.
Signed-off-by: Ivan Malov
Reviewed-by: Andy Moreton
---
drivers/common/sfc_efx/base/efx.h | 7 +++
drivers/common/sfc_efx/base/efx_mae.c | 26
capacity.
To prepare for that, action rules of the match-action engine
have to be turned into shareable objects, from SW standpoint.
Signed-off-by: Ivan Malov
Reviewed-by: Andy Moreton
---
drivers/net/sfc/sfc_flow.c | 4 +-
drivers/net/sfc/sfc_flow.h | 13 +-
drivers/net/sfc/sfc_mae.c | 362
disable.
Signed-off-by: Ivan Malov
Reviewed-by: Andy Moreton
---
drivers/net/sfc/sfc_mae.c | 44 ---
1 file changed, 32 insertions(+), 12 deletions(-)
diff --git a/drivers/net/sfc/sfc_mae.c b/drivers/net/sfc/sfc_mae.c
index 37292f5d7c..624be53269 100644
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
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
conntrack table.
Signed-off-by: Ivan Malov
Reviewed-by: Andy Moreton
---
drivers/net/sfc/sfc_mae.c| 186 +++
drivers/net/sfc/sfc_mae.h| 51 ++---
drivers/net/sfc/sfc_repr_proxy.c | 38 ++-
drivers/net/sfc/sfc_repr_proxy.h | 2 +-
4 files changed
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
. They all sit
on the same (representor proxy) m-port, while demultiplexing
of traffic uses ingress (VF) m-port value in packet metadata.
Traffic from arbitrary sources cannot be identified this way.
But, for VF traffic, it should be right to make an exception.
Signed-off-by: Ivan Malov
Revie
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
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
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
Reviewed-by: Ivan Malov
Reviewed-by: Andy Moreton
---
drivers/net/sfc/meson.build | 4 +-
drivers/net/sfc/sfc.c| 18 +-
drivers/net/sfc/sfc.h| 2 +
drivers/net/sfc/sfc_tbl_meta.c | 71
drivers/net/sfc/sfc_tbl_meta.h | 37
drivers
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 | 140
than one matches.
BCAM tables don't support "mask" and "priority", so the
corresponding fields must be zeroed.
Signed-off-by: Denis Pryazhennikov
Reviewed-by: Ivan Malov
Reviewed-by: Andy Moreton
---
drivers/net/sfc/sfc_tbls.h | 69 ++
1
1 - 100 of 637 matches
Mail list logo