Re: [ovs-dev] [PATCH] dpif-netdev: Disable XPS (Transmit Packet Steering) for non-pmd ports.

2024-06-13 Thread Eli Britstein via dev
>-Original Message- >From: Ilya Maximets >Sent: Monday, 10 June 2024 15:53 >To: Roi Dayan ; d...@openvswitch.org >Cc: Eli Britstein ; Maor Dickman ; >i.maxim...@ovn.org >Subject: Re: [ovs-dev] [PATCH] dpif-netdev: Disable XPS (Transmit Packet >Steering) for non-pmd ports. > >External

[ovs-dev] [PATCH V3 2/2] dpif-netdev: Fix flushing of a vport

2023-06-11 Thread Eli Britstein via dev
When using a userspace vport ("vxlan0"), dpif-netdev adds an additional netdev ("vxlan_sys_4789"). The dpif netdev ("vxlan0") is added to the netdev-offload ports map, thus flows are associated on this netdev. However, flushing is done on the dpif-netdev level ("vxlan_sys_4789"), and relevant

[ovs-dev] [PATCH V3 1/2] netdev-offload-dpdk: Fix flushing of a physdev

2023-06-11 Thread Eli Britstein via dev
Vport's offloads are done on the tracked orig-in-port, but the flow itself is associated in the vport's map. Removing the physdev will flush all the ports that are on its map, but not the ones on other netdevs' maps. Since flows take reference count on both their vport and their physdev, the

[ovs-dev] [PATCH V2 2/2] dpif-netdev: Fix flushing of a vport

2023-06-10 Thread Eli Britstein via dev
When using a userspace vport ("vxlan0"), dpif-netdev adds an additional netdev ("vxlan_sys_4789"). The dpif netdev ("vxlan0") is added to the netdev-offload ports map, thus flows are associated on this netdev. However, flushing is done on the dpif-netdev level ("vxlan_sys_4789"), and relevant

[ovs-dev] [PATCH V2 1/2] netdev-offload-dpdk: Fix flushing of a physdev

2023-06-10 Thread Eli Britstein via dev
Vport's offloads are done on the tracked orig-in-port, but the flow itself is associated in the vport's map. Removing the physdev will flush all the ports that are on its map, but not the ones on other netdevs' maps. Since flows take reference count on both their vport and their physdev, the

Re: [ovs-dev] [PATCH 1/2] netdev-offload-dpdk: Fix flushing of a physdev

2023-06-05 Thread Eli Britstein via dev
ail: Use caution opening links or attachments > > >On Fri, May 26, 2023 at 4:35 PM David Marchand > wrote: >> >> Hello Eli, >> >> On Mon, Sep 5, 2022 at 4:46 PM Eli Britstein via dev >> wrote: >> > >> > Vport's offloads are d

Re: [ovs-dev] [PATCH v4 3/3] netdev-offload-dpdk: use flow transfer proxy mechanism

2023-06-05 Thread Eli Britstein via dev
>-Original Message- >From: Ivan Malov >Sent: Sunday, 4 June 2023 15:58 >To: Eli Britstein >Cc: ovs-dev@openvswitch.org; Ilya Maximets ; Ori >Kam ; David Marchand >Subject: RE: [PATCH v4 3/3] netdev-offload-dpdk: use flow transfer proxy >mechanism > >External email: Use caution

Re: [ovs-dev] [PATCH dpdk-latest v3 0/6] Add support for DPDK meter HW offload

2023-04-01 Thread Eli Britstein via dev
Hi The kernel provides infrastructure that does not exist for DPDK. TC is different and cannot be imitated directly in all cases. Using a meter object created on one port (proxy) on another one (for flow) is illegal. Also, with this approach, even if fixed, offload will not work on if the port

Re: [ovs-dev] [PATCH dpdk-latest v3 0/6] Add support for DPDK meter HW offload

2023-03-30 Thread Eli Britstein via dev
Hi The usage of the proxy port is wrong. All transfer offload should be migrated to use it. There was [1-4], but it was not completed. Meters should be created only on the proxy ports. As all offloads are moved to use proxy ports, this is how they are shared. Since we don't know the proxy port

Re: [ovs-dev] [PATCH v4 3/3] netdev-offload-dpdk: use flow transfer proxy mechanism

2023-02-21 Thread Eli Britstein via dev
>-Original Message- >From: Ivan Malov >Sent: Tuesday, 21 February 2023 2:41 >To: ovs-dev@openvswitch.org >Cc: Ilya Maximets ; Eli Britstein ; Ori >Kam ; David Marchand >Subject: [PATCH v4 3/3] netdev-offload-dpdk: use flow transfer proxy >mechanism > >External email: Use caution

Re: [ovs-dev] [PATCH] netdev-offload-dpdk: Fix transfer flows.

2023-01-11 Thread Eli Britstein via dev
>-Original Message- >From: David Marchand >Sent: Wednesday, 11 January 2023 10:53 >To: Ivan Malov ; Eli Britstein ; >d...@openvswitch.org >Cc: Ilya Maximets ; Ori Kam ; >Andrew Rybchenko ; Ian Stokes > >Subject: [PATCH] netdev-offload-dpdk: Fix transfer flows. > >External email: Use

Re: [ovs-dev] [PATCH v3 0/3] Rework the usage of DPDK transfer flow offloads

2023-01-11 Thread Eli Britstein via dev
>-Original Message- >From: David Marchand >Sent: Wednesday, 11 January 2023 10:32 >To: Eli Britstein ; Ivan Malov >Cc: Ilya Maximets ; d...@openvswitch.org; Stephen >Hemminger ; Ori Kam ; >Maxime Coquelin ; Ian Stokes >; Andrew Rybchenko > >Subject: Re: [PATCH v3 0/3] Rework the usage

Re: [ovs-dev] [PATCH v3 0/3] Rework the usage of DPDK transfer flow offloads

2023-01-11 Thread Eli Britstein via dev
>-Original Message- >From: David Marchand >Sent: Wednesday, 11 January 2023 9:59 >To: Ivan Malov >Cc: Ilya Maximets ; Eli Britstein ; >d...@openvswitch.org; Stephen Hemminger >; Ori Kam ; Maxime >Coquelin ; Ian Stokes >; Andrew Rybchenko > >Subject: Re: [PATCH v3 0/3] Rework the usage

Re: [ovs-dev] [PATCH 0/6] Add support for DPDK meter HW offload

2023-01-09 Thread Eli Britstein via dev
>-Original Message- >From: Nole Zhang >Sent: Monday, 9 January 2023 11:23 >To: Eli Britstein ; d...@openvswitch.org >Cc: Eelco Chaudron ; Ilya Maximets >; Chaoyong He ; oss- >drivers >Subject: RE: [PATCH 0/6] Add support for DPDK meter HW offload > >External email: Use caution opening

Re: [ovs-dev] [PATCH 0/6] Add support for DPDK meter HW offload

2023-01-07 Thread Eli Britstein via dev
>-Original Message- >From: Nole Zhang >Sent: Friday, 6 January 2023 11:28 >To: Eli Britstein ; d...@openvswitch.org >Cc: Eelco Chaudron ; Ilya Maximets >; Chaoyong He ; oss- >drivers ; Nole Zhang >Subject: RE: [PATCH 0/6] Add support for DPDK meter HW offload > >External email: Use

Re: [ovs-dev] [PATCH 0/6] Add support for DPDK meter HW offload

2022-12-26 Thread Eli Britstein via dev
Dpif-netdev should not implement internal HW offload details. If need to "apply on all ports", it needs to be done in offload layer. However, in arch level, there is a problem with the proposed series. It will create a meter object per port, while in SW it is one object, that can be shared

[ovs-dev] [PATCH V2 7/8] ofproto: Fix 'reply.type' may be used uninitialized

2022-11-16 Thread Eli Britstein via dev
../ofproto/ofproto.c: In function 'handle_openflow': ../lib/ofp-bundle.c:195:15: error: 'reply.type' may be used uninitialized in this function [-Werror=maybe-uninitialized] 195 | m->type = htons(msg->type); | ^ ../ofproto/ofproto.c:8460:36: note: 'reply.type' was

[ovs-dev] [PATCH V2 6/8] netlink: Fix writing bytes into a region of size 0 overflows the destination

2022-11-16 Thread Eli Britstein via dev
With --enable-Werror and --with-dpdk=no, with gcc (Ubuntu 11.2.0-19ubuntu1), there are the following warnings (errors) emmitted. Those are reported in [1] to be GCC bug. Workaround it. In function 'memset', inlined from 'nl_msg_put_uninit' at ../lib/netlink.c:212:9, inlined from

[ovs-dev] [PATCH V2 4/8] dpctl: Fix zone/limit may be used uninitialized

2022-11-16 Thread Eli Britstein via dev
With --enable-Werror and --with-dpdk=no: ../lib/dpctl.c: In function 'dpctl_ct_set_limits': ../lib/ct-dpif.c:698:22: error: 'zone' may be used uninitialized in this function [-Werror=maybe-uninitialized] 698 | zone_limit->zone = zone; | ^ ../lib/dpctl.c:2139:18:

[ovs-dev] [PATCH V2 5/8] ovsdb: Fix 'table' may be used uninitialized

2022-11-16 Thread Eli Britstein via dev
With --enable-Werror and --with-dpdk=no: ../ovsdb/ovsdb.c: In function 'ovsdb_schema_from_json': ../ovsdb/ovsdb.c:246:9: error: 'table' may be used uninitialized in this function [-Werror=maybe-uninitialized] 246 | shash_add(>tables, table->name, table); | ^

[ovs-dev] [PATCH V2 8/8] debian, rhel: Enable Werror option in spec files

2022-11-16 Thread Eli Britstein via dev
After resolving DPDK cast align warnings as stated in [1], and resolving some more warnings in OVS side, enforce -Werror for debian and rhel builds too. [1] 0b6d2faace76 ("ci: Remove -Wno-cast-align from CI.") Signed-off-by: Eli Britstein --- debian/rules | 4 ++--

[ovs-dev] [PATCH V2 3/8] ovs-ofctl: Fix 'usable_protocols' may be used uninitialized

2022-11-16 Thread Eli Britstein via dev
With --enable-Werror and --with-dpdk=no: ../utilities/ovs-ofctl.c: In function 'ofctl_group_mod_file': ../utilities/ovs-ofctl.c:3107:16: error: 'usable_protocols' may be used uninitialized in this function [-Werror=maybe-uninitialized] 3107 | protocol = open_vconn_for_flow_mod(remote, ,

[ovs-dev] [PATCH V2 0/8] Fix warnings and enable Werror

2022-11-16 Thread Eli Britstein via dev
Fixing various warnings and enable Werror for debian/rhel builds. Eli Britstein (8): dp-packet: Fix dp-packet may be used initialized ofp-port: Fix 'strnlen' specified bound may exceed source size ovs-ofctl: Fix 'usable_protocols' may be used uninitialized dpctl: Fix zone/limit may be

[ovs-dev] [PATCH V2 2/8] ofp-port: Fix 'strnlen' specified bound may exceed source size

2022-11-16 Thread Eli Britstein via dev
With --enable-Werror and --with-dpdk=no: In function 'ovs_strlcpy', inlined from 'ovs_strlcpy' at ../lib/util.c:377:1, inlined from 'ofputil_port_to_string' at ../lib/ofp-port.c:273:9, inlined from 'ofputil_port_from_string.part.0' at ../lib/ofp-port.c:170:13: ../lib/util.c:380:22:

[ovs-dev] [PATCH V2 1/8] dp-packet: Fix dp-packet may be used initialized

2022-11-16 Thread Eli Britstein via dev
With --enable-Werror and --with-dpdk=no: In function 'dp_packet_reset_offload', inlined from 'dp_packet_init__' at ../lib/dp-packet.c:35:5, inlined from 'dp_packet_use__' at ../lib/dp-packet.c:50:5, inlined from 'dp_packet_use' at ../lib/dp-packet.c:60:5, inlined from

Re: [ovs-dev] [PATCH] debian, rhel: Enable Werror option in spec files

2022-11-14 Thread Eli Britstein via dev
>-Original Message- >From: Simon Horman >Sent: Monday, 14 November 2022 12:44 >To: Eli Britstein >Cc: d...@openvswitch.org; Ilya Maximets ; Simon >Horman ; Salem Sol >Subject: Re: [PATCH] debian, rhel: Enable Werror option in spec files > >External email: Use caution opening links or

[ovs-dev] [PATCH] debian, rhel: Enable Werror option in spec files

2022-11-13 Thread Eli Britstein via dev
Following resolving DPDK cast align warnings as stated in [1], enforce -Werror for RPM builds too. [1] 0b6d2faace76 ("ci: Remove -Wno-cast-align from CI.") Signed-off-by: Eli Britstein --- debian/rules | 4 ++-- rhel/openvswitch.spec.in | 2 +- 2 files changed, 3 insertions(+), 3

Re: [ovs-dev] [PATCH v4] netdev-offload-dpdk: Enhance the support of tunnel pop action

2022-11-10 Thread Eli Britstein via dev
Acked-by: Eli Britstein >-Original Message- >From: Simon Horman >Sent: Wednesday, 9 November 2022 21:55 >To: d...@openvswitch.org >Cc: Eelco Chaudron ; Ilya Maximets >; Eli Britstein ; Chaoyong He >; oss-driv...@corigine.com; Louis Peens >; Simon Horman >Subject: [PATCH v4]

Re: [ovs-dev] [PATCH v3 0/3] add functions about rte_flow to ovs-dpdk

2022-10-27 Thread Eli Britstein via dev
This series has 2 commits for DSCP and one bug fix not related to it. Not sure why they are on the same series. For DSCP, there is no way from RTE API point of view to rewrite partial bits on the DSCP byte. I think those are NACK. Please explain if I'm wrong. For the bug fix commit, the code is

[ovs-dev] [PATCH 2/2] dpif-netdev: Fix flushing of a vport

2022-09-05 Thread Eli Britstein via dev
When using a userspace vport ("vxlan0"), dpif-netdev adds an additional netdev ("vxlan_sys_4789"). The dpif netdev ("vxlan0") is added to the netdev-offload ports map, thus flows are associated on this netdev. However, flushing is done on the dpif-netdev level ("vxlan_sys_4789"), and relevant

[ovs-dev] [PATCH 1/2] netdev-offload-dpdk: Fix flushing of a physdev

2022-09-05 Thread Eli Britstein via dev
Vport's offloads are done on the tracked orig-in-port, but the flow itself is associated in the vport's map. Removing the physdev will flush all the ports that are on its map, but not the ones on other netdevs' maps. Since flows take reference count on both their vport and their physdev, the

[ovs-dev] [PATCH V2 1/1] netdev-offload: Set 'miss_api_supported' to be under netdev

2022-08-31 Thread Eli Britstein via dev
Commit [1] introduced a flag in dpif-netdev level, to optimize performance and avoid hw_miss_packet_recover() for devices with no such support. However, there is a race condition between traffic processing and assigning a 'flow_api' object to the netdev. In such case, EOPNOTSUPP is returned by

Re: [ovs-dev] [PATCH 1/5] netdev-offload-dpdk: Support offload of set IPv4 DSCP action

2022-08-19 Thread Eli Britstein via dev
On 8/16/2022 3:50 PM, Simon Horman wrote: From: Chaoyong He Add the support of offload of set IPv4 DSCP action. Signed-off-by: Chaoyong He Signed-off-by: Simon Horman --- lib/netdev-offload-dpdk.c | 21 ++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git

Re: [ovs-dev] [PATCH 3/5] netdev-offload-dpdk: Add support of IPv6 tunnel

2022-08-19 Thread Eli Britstein via dev
On 8/16/2022 3:50 PM, Simon Horman wrote: From: Chaoyong He Add support of IPv6 tunnel. IPv6 tunnel is already supported. The missing setting of is_ipv6 field affects only if using a dpdk PMD that would return restore info flags with RTE_FLOW_RESTORE_INFO_TUNNEL on, but

Re: [ovs-dev] [PATCH v3 3/3] netdev-offload-dpdk: use flow transfer proxy mechanism

2022-07-20 Thread Eli Britstein via dev
>-Original Message- >From: Ivan Malov >Sent: Wednesday, July 20, 2022 3:18 PM >To: d...@openvswitch.org >Cc: Eli Britstein ; Stephen Hemminger >; Ilya Maximets ; Ori >Kam ; Maxime Coquelin >; David Marchand >; Andrew Rybchenko > >Subject: [PATCH v3 3/3] netdev-offload-dpdk: use flow

[ovs-dev] [PATCH] conntrack: Fix conntrack multiple new state

2022-07-17 Thread Eli Britstein via dev
A connection is established if we see packets from both directions. The cited commit [1] fixed the issue of sending twice in one direction, but still an issue if more than that. Fix it. Fixes: a867c010ee91 ("conntrack: Fix conntrack new state") Signed-off-by: Eli Britstein ---

[ovs-dev] [PATCH] netdev-offload: Set 'miss_api_supported' to be under netdev

2022-06-30 Thread Eli Britstein via dev
Commit [1] introduced a flag in dpif-netdev level, to optimize performance and avoid hw_miss_packet_recover() for devices with no such support. However, there is a race condition between traffic processing and assigning a 'flow_api' object to the netdev. In such case, EOPNOTSUPP is returned by

Re: [ovs-dev] [PATCH] netdev-offload-dpdk: setting RSS hash types in RSS action

2022-06-24 Thread Eli Britstein via dev
+Ori From: Finn, Emma Sent: Friday, June 24, 2022 5:41 PM To: Ilya Maximets ; ovs-dev@openvswitch.org ; Stokes, Ian Cc: Eli Britstein ; Slava Ovsiienko ; Flavio Leitner ; Matan Azrad Subject: RE: [ovs-dev] [PATCH] netdev-offload-dpdk: setting RSS hash types

Re: [ovs-dev] [PATCH 3/3] netdev-offload-dpdk: use flow transfer proxy mechanism

2022-06-08 Thread Eli Britstein via dev
Hi Ivan, >-Original Message- >From: Ivan Malov >Sent: Wednesday, June 8, 2022 10:02 PM >To: Eli Britstein >Cc: d...@openvswitch.org; Andrew Rybchenko >; Ilya Maximets ; >Ori Kam ; NBU-Contact-Thomas Monjalon (EXTERNAL) >; Stephen Hemminger >; David Marchand >; Gaetan Rivet ; Maxime

Re: [ovs-dev] [PATCH 3/3] netdev-offload-dpdk: use flow transfer proxy mechanism

2022-06-08 Thread Eli Britstein via dev
Hi Ivan, >-Original Message- >From: Ivan Malov >Sent: Wednesday, June 8, 2022 5:46 PM >To: Eli Britstein >Cc: d...@openvswitch.org; Andrew Rybchenko >; Ilya Maximets ; >Ori Kam ; NBU-Contact-Thomas Monjalon (EXTERNAL) >; Stephen Hemminger >; David Marchand >; Gaetan Rivet ; Maxime

Re: [ovs-dev] [PATCH 3/3] netdev-offload-dpdk: use flow transfer proxy mechanism

2022-06-08 Thread Eli Britstein via dev
Hi Ivan, >-Original Message- >From: Ivan Malov >Sent: Tuesday, June 7, 2022 11:56 PM >To: Eli Britstein >Cc: d...@openvswitch.org; Andrew Rybchenko >; Ilya Maximets ; >Ori Kam ; NBU-Contact-Thomas Monjalon (EXTERNAL) >; Stephen Hemminger >; David Marchand >; Gaetan Rivet ; Maxime

Re: [ovs-dev] [PATCH 1/3] netdev-dpdk: negotiate delivery of per-packet Rx metadata

2022-06-01 Thread Eli Britstein via dev
"TUNNEL_ID" is a bad name, but that's how dpdk called it. There was a discussion about having this knowledge in OVS so we can avoid calling rte_flow_get_restore_info(). How else it is used? >-Original Message- >From: Ivan Malov >Sent: Monday, May 30, 2022 5:16 PM >To:

Re: [ovs-dev] [PATCH 3/3] netdev-offload-dpdk: use flow transfer proxy mechanism

2022-06-01 Thread Eli Britstein via dev
- Missing proper handling of the testpmd syntax logging. It changes the used port according to "transfer", but the log still uses netdev_dpdk_get_port_id(). - The usage of the "proxy" port for rte-flow implies that this proxy port is attached to OVS, otherwise it is not "started" and creation of

Re: [ovs-dev] [PATCH V2 3/3] netdev-offload-dpdk: Add geneve header pattern match

2022-05-18 Thread Eli Britstein via dev
gating the offload design? 2. I have not seen companion patch support for encap offload for Geneve. Is similar restriction of not offloading Geneve w/ options apply on the encap offload? Hemal On Sat, May 7, 2022 at 10:07 PM Eli Britstein via dev mailto:ovs-dev@openvswitch.org>>

Re: [ovs-dev] [PATCH V2 3/3] netdev-offload-dpdk: Add geneve header pattern match

2022-05-07 Thread Eli Britstein via dev
>-Original Message- >From: Ilya Maximets >Sent: Wednesday, May 4, 2022 2:44 PM >To: Eli Britstein ; d...@openvswitch.org >Cc: i.maxim...@ovn.org; Gaetan Rivet ; >msant...@redhat.com; Nir Anteby >Subject: Re: [PATCH V2 3/3] netdev-offload-dpdk: Add geneve header pattern >match >

[ovs-dev] [PATCH] docs: Note ALLOW_EXPERIMENTAL_API for tunnel offloads

2022-04-17 Thread Eli Britstein via dev
Tunnel offload APIs have '__rte_experimental' attribute, therefore available only if ALLOW_EXPERIMENTAL_API is defined. Documente it. Signed-off-by: Eli Britstein --- Documentation/howto/dpdk.rst | 4 1 file changed, 4 insertions(+) diff --git a/Documentation/howto/dpdk.rst

Re: [ovs-dev] [PATCH V4 1/2] netdev-offload-dpdk: Use has_vlan match attribute

2022-03-16 Thread Eli Britstein via dev
attribute > > External email: Use caution opening links or attachments > > > On 2/7/22 17:56, Eli Britstein via dev wrote: > > DPDK 20.11 introduced an ability to specify existance/non-existance of > > VLAN tag by [1]. > > Use this attribute. > > > >

[ovs-dev] [PATCH V2 3/3] netdev-offload-dpdk: Add geneve header pattern match

2022-02-07 Thread Eli Britstein via dev
Add support for matching on geneve header. Signed-off-by: Eli Britstein Reviewed-by: Nir Anteby Acked-by: Michael Santana --- NEWS | 2 ++ lib/netdev-offload-dpdk.c | 58 +++ 2 files changed, 60 insertions(+) diff --git a/NEWS b/NEWS

[ovs-dev] [PATCH V2 0/3] Support geneve offloads

2022-02-07 Thread Eli Britstein via dev
Add support for dpdk geneve tunnel offloads. v2-v1: - Rebase. GitHub actions: v1: https://github.com/elibritstein/OVS/actions/runs/1633157455 v2: https://github.com/elibritstein/OVS/actions/runs/1807027490 Eli Britstein (3): netdev-dpdk: Add flow_api support for netdev geneve vports

[ovs-dev] [PATCH V2 2/3] netdev-offload-dpdk: Support tnl_pop for geneve tunnel

2022-02-07 Thread Eli Britstein via dev
Signed-off-by: Eli Britstein Reviewed-by: Nir Anteby Acked-by: Michael Santana --- lib/netdev-offload-dpdk.c | 13 + 1 file changed, 13 insertions(+) diff --git a/lib/netdev-offload-dpdk.c b/lib/netdev-offload-dpdk.c index 94dc6a9b7..edd4e009d 100644 ---

[ovs-dev] [PATCH V2 1/3] netdev-dpdk: Add flow_api support for netdev geneve vports

2022-02-07 Thread Eli Britstein via dev
Add the acceptance of geneve devices to netdev_dpdk_flow_api_supported() API, to allow offloading of DPDK geneve devices. Signed-off-by: Eli Britstein Reviewed-by: Nir Anteby Acked-by: Michael Santana --- lib/netdev-dpdk.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git

[ovs-dev] [PATCH V2 1/1] dpif-netdev: Keep orig_in_port as a field of the flow

2022-02-07 Thread Eli Britstein via dev
A flow may be modified after its initial offload failed. In this case, according to [1], the modification is handled as a flow add. For a vport flow "add", the orig_in_port should be provided. Keep that field in the flow struct, so it can be provided in the flow modification use case. [1]

[ovs-dev] [PATCH V4 2/2] netdev-offload-dpdk: Fix ethernet type for VLANs

2022-02-07 Thread Eli Britstein via dev
For VLANs, the match of ethernet type should be specified in inner_type field of the vlan match, and not type field in ethernet match. Fix it. Fixes: e8a2b5bf92bb ("netdev-dpdk: implement flow offload with rte flow") Signed-off-by: Eli Britstein Reviewed-by: Salem Sol ---

[ovs-dev] [PATCH V4 1/2] netdev-offload-dpdk: Use has_vlan match attribute

2022-02-07 Thread Eli Britstein via dev
DPDK 20.11 introduced an ability to specify existance/non-existance of VLAN tag by [1]. Use this attribute. [1]: 09315fc83861 ("ethdev: add VLAN attributes to ethernet and VLAN items") Signed-off-by: Eli Britstein Reviewed-by: Salem Sol --- lib/netdev-offload-dpdk.c | 16 1

Re: [ovs-dev] [PATCH dpdk-latest] ci: Remove -Wno-cast-align from CI

2022-01-04 Thread Eli Britstein via dev
On 1/4/2022 4:56 PM, Eelco Chaudron wrote: External email: Use caution opening links or attachments On 5 Dec 2021, at 8:34, Eli Britstein via dev wrote: Following [1]-[3] in DPDK, there are no more such warnings from DPDK. Remove ignoring them if they occur. GitHub actions: v1: https

[ovs-dev] [PATCH 3/3] netdev-offload-dpdk: Add geneve header pattern match

2021-12-29 Thread Eli Britstein via dev
Add support for matching on geneve header. Signed-off-by: Eli Britstein Reviewed-by: Nir Anteby --- NEWS | 2 ++ lib/netdev-offload-dpdk.c | 58 +++ 2 files changed, 60 insertions(+) diff --git a/NEWS b/NEWS index bc4a1cfac..18f15b61f

[ovs-dev] [PATCH 2/3] netdev-offload-dpdk: Support tnl_pop for geneve tunnel

2021-12-29 Thread Eli Britstein via dev
Signed-off-by: Eli Britstein Reviewed-by: Nir Anteby --- lib/netdev-offload-dpdk.c | 13 + 1 file changed, 13 insertions(+) diff --git a/lib/netdev-offload-dpdk.c b/lib/netdev-offload-dpdk.c index 402353125..50650bd07 100644 --- a/lib/netdev-offload-dpdk.c +++

[ovs-dev] [PATCH 0/3] Support geneve offloads

2021-12-29 Thread Eli Britstein via dev
Add support for dpdk geneve tunnel offloads. GitHub actions: v1: https://github.com/elibritstein/OVS/actions/runs/1633157455 Eli Britstein (3): netdev-dpdk: Add flow_api support for netdev geneve vports netdev-offload-dpdk: Support tnl_pop for geneve tunnel netdev-offload-dpdk: Add geneve

[ovs-dev] [PATCH 1/3] netdev-dpdk: Add flow_api support for netdev geneve vports

2021-12-29 Thread Eli Britstein via dev
Add the acceptance of geneve devices to netdev_dpdk_flow_api_supported() API, to allow offloading of DPDK geneve devices. Signed-off-by: Eli Britstein Reviewed-by: Nir Anteby --- lib/netdev-dpdk.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/netdev-dpdk.c

Re: [ovs-dev] [PATCH] netdev-dpdk: Dummy implementation of the rte_flow API for testing purposes.

2021-12-20 Thread Eli Britstein via dev
On 12/17/2021 12:06 AM, Ilya Maximets wrote: External email: Use caution opening links or attachments New 'options:dummy-rte-flow' configuration knob for netdev-dpdk ports, i.e. type=dpdk/dpdkvhostuserclient, to turn on dummy rte_flow API. This version of API will do nothing but reply with

[ovs-dev] [PATCH dpdk-latest] ci: Remove -Wno-cast-align from CI

2021-12-04 Thread Eli Britstein via dev
Following [1]-[3] in DPDK, there are no more such warnings from DPDK. Remove ignoring them if they occur. GitHub actions: v1: https://github.com/elibritstein/OVS/actions/runs/1540651133 [1] a3f8d0587188 ("net: avoid cast-align warning in VLAN insert function") [2] da0333c8790b ("mbuf: avoid

Re: [ovs-dev] [PATCH] dpif-netdev: Use PMD context to get the port for HW miss recovery.

2021-12-04 Thread Eli Britstein via dev
Acked-by: Eli Britstein On 12/3/2021 11:12 PM, Ilya Maximets wrote: External email: Use caution opening links or attachments Last RX queue, from which the packet got received, is already stored in the PMD context. So, we can get the netdev from it without the expensive hash map lookup. In

Re: [ovs-dev] [PATCH dpdk-latest] acinclude: Enable -Werror by default

2021-11-30 Thread Eli Britstein via dev
On 11/30/2021 2:06 PM, Ilya Maximets wrote: External email: Use caution opening links or attachments On 11/30/21 10:43, Eli Britstein wrote: On 11/30/2021 12:31 AM, Ilya Maximets wrote: External email: Use caution opening links or attachments On 11/7/21 11:56, Eli Britstein via dev wrote

Re: [ovs-dev] [PATCH dpdk-latest] acinclude: Enable -Werror by default

2021-11-30 Thread Eli Britstein via dev
On 11/30/2021 12:31 AM, Ilya Maximets wrote: External email: Use caution opening links or attachments On 11/7/21 11:56, Eli Britstein via dev wrote: Following dpdk commits [1]-[3], it is now possible to compile with --enable-Werror. Change the default to on, with an option to disable using

Re: [ovs-dev] [PATCH] dpif-netdev: avoid hw_miss_packet_recover() for devices with no support

2021-11-22 Thread Eli Britstein via dev
On 11/22/2021 3:19 PM, Sriharsha Basavapatna wrote: Hi Eli, On Sun, Nov 21, 2021 at 12:03 PM Eli Britstein via dev wrote: Hi Harsha, It's a clever idea, though have some problems in the implementation. PSB. Thanks, please see my response below. On 11/20/2021 11:20 AM, Sriharsha

Re: [ovs-dev] [PATCH] dpif-netdev: avoid hw_miss_packet_recover() for devices with no support

2021-11-20 Thread Eli Britstein via dev
Hi Harsha, It's a clever idea, though have some problems in the implementation. PSB. On 11/20/2021 11:20 AM, Sriharsha Basavapatna wrote: The hw_miss_packet_recover() API results in performance degradation, for ports that are either not offload capable or do not support this specific offload

[ovs-dev] [PATCH dpdk-latest] acinclude: Enable -Werror by default

2021-11-07 Thread Eli Britstein via dev
Following dpdk commits [1]-[3], it is now possible to compile with --enable-Werror. Change the default to on, with an option to disable using --disable-Werror. Notes: 1. To compile against 21.11-rc1, need to apply [4] and [5] patches. 2. There are still sparse errors, due to dpdk issue. [6] fixes

Re: [ovs-dev] [PATCH V2 4/4] netdev-offload-dpdk: Don't ignore frags as they are handled

2021-08-27 Thread Eli Britstein via dev
On 8/27/2021 12:30 PM, Maxime Coquelin wrote: External email: Use caution opening links or attachments On 8/16/21 3:53 PM, Eli Britstein via dev wrote: Signed-off-by: Eli Britstein --- NEWS | 2 ++ lib/netdev-offload-dpdk.c | 5 - 2 files changed, 2 insertions

Re: [ovs-dev] [PATCH V3 1/2] netdev-offload-dpdk: Use has_vlan match attribute

2021-08-24 Thread Eli Britstein via dev
On 8/24/2021 6:47 PM, Ilya Maximets wrote: External email: Use caution opening links or attachments On 8/24/21 5:25 PM, Eli Britstein wrote: On 8/24/2021 6:08 PM, Finn, Emma wrote: External email: Use caution opening links or attachments -Original Message- From: Eli Britstein

Re: [ovs-dev] [PATCH V3 1/2] netdev-offload-dpdk: Use has_vlan match attribute

2021-08-24 Thread Eli Britstein via dev
On 8/24/2021 6:08 PM, Finn, Emma wrote: External email: Use caution opening links or attachments -Original Message- From: Eli Britstein Sent: Monday 16 August 2021 14:55 To: d...@openvswitch.org; Ilya Maximets Cc: Finn, Emma ; Stokes, Ian ; Sriharsha Basavapatna ; Gaetan Rivet ;

[ovs-dev] [PATCH] dpif-netdev: Keep orig_in_port as a field of the flow

2021-08-16 Thread Eli Britstein via dev
A flow may be modified after its initial offload failed. In this case, according to [1], the modification is handled as a flow add. For a vport flow "add", the orig_in_port should be provided. Keep that field in the flow struct, so it can be provided in the flow modification use case. [1]

[ovs-dev] [PATCH V3 2/2] netdev-offload-dpdk: Fix ethernet type for VLANs

2021-08-16 Thread Eli Britstein via dev
For VLANs, the match of ethernet type should be specified in inner_type field of the vlan match, and not type field in ethernet match. Fix it. Fixes: e8a2b5bf92bb ("netdev-dpdk: implement flow offload with rte flow") Signed-off-by: Eli Britstein Reviewed-by: Salem Sol ---

[ovs-dev] [PATCH V3 1/2] netdev-offload-dpdk: Use has_vlan match attribute

2021-08-16 Thread Eli Britstein via dev
DPDK 20.11 introduced an ability to specify existance/non-existance of VLAN tag by [1]. Use this attribute. [1]: 09315fc83861 ("ethdev: add VLAN attributes to ethernet and VLAN items") Signed-off-by: Eli Britstein Reviewed-by: Salem Sol --- lib/netdev-offload-dpdk.c | 16 1

[ovs-dev] [PATCH V2 3/4] netdev-offload-dpdk: Support IPv6 fragmentation types

2021-08-16 Thread Eli Britstein via dev
Support IPv6 fragmentation matching. Signed-off-by: Eli Britstein --- lib/netdev-offload-dpdk.c | 82 ++- 1 file changed, 81 insertions(+), 1 deletion(-) diff --git a/lib/netdev-offload-dpdk.c b/lib/netdev-offload-dpdk.c index ee8e56fe0..d79ad1bea 100644 ---

[ovs-dev] [PATCH V2 4/4] netdev-offload-dpdk: Don't ignore frags as they are handled

2021-08-16 Thread Eli Britstein via dev
Signed-off-by: Eli Britstein --- NEWS | 2 ++ lib/netdev-offload-dpdk.c | 5 - 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/NEWS b/NEWS index 26920e215..80466c014 100644 --- a/NEWS +++ b/NEWS @@ -8,6 +8,8 @@ Post-v2.16.0 by default.

[ovs-dev] [PATCH V2 1/4] netdev-offload-dpdk: Add last attribute to patterns

2021-08-16 Thread Eli Britstein via dev
Matching on frag types requires range. Add 'last' attribute to patterns. Signed-off-by: Eli Britstein --- lib/netdev-offload-dpdk.c | 151 -- 1 file changed, 81 insertions(+), 70 deletions(-) diff --git a/lib/netdev-offload-dpdk.c b/lib/netdev-offload-dpdk.c

[ovs-dev] [PATCH V2 2/4] netdev-offload-dpdk: Support IPv4 fragmentation types

2021-08-16 Thread Eli Britstein via dev
Support IPv4 fragmentation matching. Signed-off-by: Eli Britstein --- lib/netdev-offload-dpdk.c | 47 +-- 1 file changed, 45 insertions(+), 2 deletions(-) diff --git a/lib/netdev-offload-dpdk.c b/lib/netdev-offload-dpdk.c index 769dc48d2..ee8e56fe0 100644

[ovs-dev] [PATCH V2 0/4] netdev datapath offload frag matching

2021-08-16 Thread Eli Britstein via dev
Netdev datapath ignored fragmentation matching so far. [1] introduced an API for that in dpdk. Use it to apply frag matching. [1] http://mails.dpdk.org/archives/dev/2020-October/186177.html Travis: v1: https://travis-ci.org/github/elibritstein/OVS/builds/752634689 GitHub Actions: v1:

Re: [ovs-dev] [PATCH V3 0/4] dpif-netdev offload transitions

2021-08-03 Thread Eli Britstein via dev
On 8/2/2021 10:58 PM, Ilya Maximets wrote: External email: Use caution opening links or attachments On 7/26/21 10:14 AM, Eli Britstein wrote: This patch-set improves/fixes offloads transitions behavior. Patch #1 avoids flushing PMD offloads unnecessarily. Patch #2 fixes a flow

[ovs-dev] [PATCH V3 3/4] dpif-netdev: Fix offloads of modified flows

2021-07-26 Thread Eli Britstein via dev
Association of a mark to a flow is done as part of its offload handling, in the offloading thread. However, the PMD thread specifies whether an offload request is an "add" or "modify" by the association of a mark to the flow. This is exposed to a race condition. A flow might be created with

[ovs-dev] [PATCH V3 4/4] dpif-netdev: Log flow modification in debug level

2021-07-26 Thread Eli Britstein via dev
Log flow modifications to help debugging. Signed-off-by: Eli Britstein Reviewed-by: Gaetan Rivet --- lib/dpif-netdev.c | 114 +++--- 1 file changed, 68 insertions(+), 46 deletions(-) diff --git a/lib/dpif-netdev.c b/lib/dpif-netdev.c index

[ovs-dev] [PATCH V3 2/4] dpif-netdev: Fix flow modification after failure

2021-07-26 Thread Eli Britstein via dev
dp_netdev_flow_offload_main thread is asynchronous, by the cited commit. There might be a case where there are modification requests of the same flow submitted before handled. Then, if the first handling fails, the rule for the flow is deleted, and the mark is freed. Then, the following one should

[ovs-dev] [PATCH V3 1/4] dpif-netdev: Do not flush PMD offloads on reload

2021-07-26 Thread Eli Britstein via dev
Before flushing offloads of a removed port was supported by [1], it was necessary to flush the 'marks'. In doing so, all offloads of the PMD are removed, include the ones that are not related to the removed port and that are not modified following this removal. As a result such flows are evicted

[ovs-dev] [PATCH V3 0/4] dpif-netdev offload transitions

2021-07-26 Thread Eli Britstein via dev
This patch-set improves/fixes offloads transitions behavior. Patch #1 avoids flushing PMD offloads unnecessarily. Patch #2 fixes a flow modifications bug. Patch #3 fixes a race condition with flow modifications. Patch #3 improves debuggability of flow modifications. v2-v1: - Rebase. v3-v2: -

[ovs-dev] [PATCH V3 2/2] netdev-offload-dpdk: Fix vxlan vni cast-align warnings

2021-07-25 Thread Eli Britstein via dev
Reported-by: Harry Van Haaren Fixes: 4e432d6f8128 ("netdev-offload-dpdk: Support tnl/push using vxlan encap attribute.") Fixes: e098c2f966cb ("netdev-dpdk-offload: Add vxlan pattern matching function.") Signed-off-by: Eli Britstein --- lib/netdev-offload-dpdk.c | 19 +-- 1

[ovs-dev] [PATCH V3 1/2] netdev-offload-dpdk: Fix IPv6 rewrite cast-align warning

2021-07-25 Thread Eli Britstein via dev
Fixes: b6207b1d2711 ("netdev-offload-dpdk: Support offload of set IPv6 actions.") Signed-off-by: Eli Britstein --- lib/netdev-offload-dpdk.c | 5 - 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/lib/netdev-offload-dpdk.c b/lib/netdev-offload-dpdk.c index e7913292e..4112fc3a5

Re: [ovs-dev] [PATCH V2 1/3] dpif-netdev: Do not flush PMD offloads on reload

2021-07-25 Thread Eli Britstein via dev
On 7/23/2021 9:00 PM, Ilya Maximets wrote: External email: Use caution opening links or attachments On 7/12/21 5:07 PM, Eli Britstein wrote: Before flushing offloads of a removed port was supported by [1], it was necessary to flush the 'marks'. In doing so, all offloads of the PMD are

Re: [ovs-dev] [PATCH 2/2] netdev-offload-dpdk: Fix vxlan vni cast-align warnings

2021-07-22 Thread Eli Britstein via dev
On 7/22/2021 4:10 PM, Ilya Maximets wrote: External email: Use caution opening links or attachments On 7/22/21 3:00 PM, Eli Britstein wrote: On 7/22/2021 3:28 PM, Ilya Maximets wrote: External email: Use caution opening links or attachments On 7/11/21 7:15 AM, Eli Britstein wrote:

Re: [ovs-dev] [PATCH 2/2] netdev-offload-dpdk: Fix vxlan vni cast-align warnings

2021-07-22 Thread Eli Britstein via dev
On 7/22/2021 3:28 PM, Ilya Maximets wrote: External email: Use caution opening links or attachments On 7/11/21 7:15 AM, Eli Britstein wrote: Compiling with -Werror and -Wcast-align has errors like: lib/netdev-offload-dpdk.c: In function 'dump_flow_pattern': lib/netdev-offload-dpdk.c:385:38:

Re: [ovs-dev] [PATCH 2/2] dpif-netdev: Introduce netdev array cache

2021-07-15 Thread Eli Britstein via dev
On 7/15/2021 4:35 PM, Ferriter, Cian wrote: External email: Use caution opening links or attachments -Original Message- From: Eli Britstein Sent: Wednesday 14 July 2021 16:21 To: Ferriter, Cian ; Ilya Maximets ; Gaëtan Rivet ; d...@openvswitch.org; Van Haaren, Harry Cc: Majd