Re: [ovs-dev] [PATCH] Documentation: Fix links in the DPDK guide on physical ports.

2023-01-06 Thread David Marchand
On Thu, Jan 5, 2023 at 8:34 PM Ilya Maximets wrote: > > The text enclosed in '<...>' supposed to be an actual link and not the > name of the link. This generates incorrect links that lead nowhere. Indeed. I was wondering if you have access to openvswitch.org http logs, to catch other dead links,

Re: [ovs-dev] [PATCH v5 1/1] userspace: Add SRv6 tunnel support.

2023-01-06 Thread Nobuhiro MIKI
On 2023/01/03 7:59, Ilya Maximets wrote: > On 10/11/22 08:11, Nobuhiro MIKI wrote: >> SRv6 (Segment Routing IPv6) tunnel vport is responsible >> for encapsulation and decapsulation the inner packets with >> IPv6 header and an extended header called SRH >> (Segment Routing Header). See spec in:

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

2023-01-06 Thread Nole Zhang
> -Original Message- > From: Eli Britstein > Sent: 2022年12月26日 18:04 > To: Simon Horman ; 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 > > Dpif-netdev should not

Re: [ovs-dev] [PATCH] treewide: Don't use non-portable '==' with test command.

2023-01-06 Thread David Marchand
On Thu, Jan 5, 2023 at 3:12 PM Ilya Maximets wrote: > > '==' is not defined by POSIX and not supported by some shells. > This is causing test failures and potential other issues: > > ./tests/testsuite: 54: test: X2: unexpected operator > ./tests/testsuite: 54: test: X157: unexpected operator >

Re: [ovs-dev] [PATCH] [ovs-dev v4] dpctl: Add support to count upcall packets

2023-01-06 Thread wangchuanlei
>On 1/5/23 16:40, Eelco Chaudron wrote: >> >> >> On 5 Jan 2023, at 2:52, wangchuanlei wrote: >> >>> Add support to count upall packets, when kmod of openvswitch upcall >>> to count the number of packets for upcall succeed and failed, which >>> is a better way to see how many packets upcalled o

Re: [ovs-dev] [PATCH] treewide: Don't use non-portable '==' with test command.

2023-01-06 Thread Eelco Chaudron
On 5 Jan 2023, at 15:12, Ilya Maximets wrote: > '==' is not defined by POSIX and not supported by some shells. > This is causing test failures and potential other issues: > > ./tests/testsuite: 54: test: X2: unexpected operator > ./tests/testsuite: 54: test: X157: unexpected operator > ./

Re: [ovs-dev] [PATCH] Documentation: Fix links in maintainers.rst.

2023-01-06 Thread Eelco Chaudron
On 5 Jan 2023, at 20:42, Ilya Maximets wrote: > GitHub and Sphinx are parsing links differently. Sphinx knows about > the overall documentation structure and all the sections defined in > other docs, while GitHub is using direct rst 2 html conversion and > doesn't know any of that. Sphinx wan

Re: [ovs-dev] [PATCH] [ovs-dev v4] dpctl: Add support to count upcall packets

2023-01-06 Thread Eelco Chaudron
On 6 Jan 2023, at 10:49, wangchuanlei wrote: >> On 1/5/23 16:40, Eelco Chaudron wrote: >>> >>> >>> On 5 Jan 2023, at 2:52, wangchuanlei wrote: >>> Add support to count upall packets, when kmod of openvswitch upcall to count the number of packets for upcall succeed and failed, which >>>

Re: [ovs-dev] [PATCH] [ovs-dev v4] dpctl: Add support to count upcall packets

2023-01-06 Thread Ilya Maximets
On 1/6/23 11:12, Eelco Chaudron wrote: > > > On 6 Jan 2023, at 10:49, wangchuanlei wrote: > >>> On 1/5/23 16:40, Eelco Chaudron wrote: On 5 Jan 2023, at 2:52, wangchuanlei wrote: > Add support to count upall packets, when kmod of openvswitch upcall > to count the numb

Re: [ovs-dev] [PATCH v9] tc: Add support for TCA_STATS_PKT64

2023-01-06 Thread Eelco Chaudron
On 5 Jan 2023, at 21:24, Mike Pattrick wrote: > Currently tc offload flow packet counters will roll over every ~4 > billion packets. This is because the packet counter in struct > tc_stats provided by TCA_STATS_BASIC is a 32bit integer. > > Now we check for the optional TCA_STATS_PKT64 attribut

Re: [ovs-dev] [PATCH] [ovs-dev v4] dpctl: Add support to count upcall packets

2023-01-06 Thread Eelco Chaudron
On 6 Jan 2023, at 11:37, Ilya Maximets wrote: > On 1/6/23 11:12, Eelco Chaudron wrote: >> >> >> On 6 Jan 2023, at 10:49, wangchuanlei wrote: >> On 1/5/23 16:40, Eelco Chaudron wrote: > > > On 5 Jan 2023, at 2:52, wangchuanlei wrote: > >> Add support to count upall packet

[ovs-dev] [PATCH] system-dpdk: Fix error message in ping vhost-user ports.

2023-01-06 Thread Eelco Chaudron
In some environments, ovs-vswitchd gets shutdown before the pkill of testpmd has been completed, which results in the following error messages: Removing port 'dpdkvhostuser0' while vhost device still attached. To restore connectivity after re-adding of port, VM on socket '' must be restarted.

Re: [ovs-dev] [PATCH v6 1/2] netdev-dpdk: Add per virtqueue statistics.

2023-01-06 Thread Ilya Maximets
On 1/5/23 21:24, David Marchand wrote: > The DPDK vhost-user library maintains more granular per queue stats > which can replace what OVS was providing for vhost-user ports. > > The benefits for OVS: > - OVS can skip parsing packet sizes on the rx side, > - dev->stats_lock won't be taken in rx/tx

Re: [ovs-dev] [PATCH] Documentation: Fix links in maintainers.rst.

2023-01-06 Thread Ilya Maximets
On 1/5/23 21:12, Han Zhou wrote: > > > On Thu, Jan 5, 2023 at 11:42 AM Ilya Maximets > wrote: >> >> GitHub and Sphinx are parsing links differently.  Sphinx knows about >> the overall documentation structure and all the sections defined in >> other docs, while GitHub i

Re: [ovs-dev] [PATCH v6 1/2] netdev-dpdk: Add per virtqueue statistics.

2023-01-06 Thread Maxime Coquelin
On 1/6/23 12:02, Ilya Maximets wrote: On 1/5/23 21:24, David Marchand wrote: The DPDK vhost-user library maintains more granular per queue stats which can replace what OVS was providing for vhost-user ports. The benefits for OVS: - OVS can skip parsing packet sizes on the rx side, - dev->sta

[ovs-dev] [PATCH ovn] Documentation: Fix links in maintainers.rst.

2023-01-06 Thread Ilya Maximets
GitHub and Sphinx are parsing links differently. Sphinx knows about the overall documentation structure and all the sections defined in other docs, while GitHub is using direct rst 2 html conversion and doesn't know any of that. Sphinx wants links to sections in other docs to be defined with a :d

[ovs-dev] [PATCH] flow: Consistent VXLAN UDP src ports for fragmented packets

2023-01-06 Thread Hemanth Aramadaka via dev
Issue: The src-port for UDP is based on RSS hash in the packet metadata. In case of packets coming from VM it will be 5-tuple, if available, otherwise just IP addresses.If the VM fragments a large IP packet and sends the fragments to ovs, only the first fragment will contain the L4 header. Therefo

[ovs-dev] [PATCH v6] netdev-dpdk: add control plane protection support

2023-01-06 Thread Robin Jarry
Some control protocols are used to maintain link status between forwarding engines (e.g. LACP). When the system is not sized properly, the PMD threads may not be able to process all incoming traffic from the configured Rx queues. When a signaling packet of such protocols is dropped, it can cause li

Re: [ovs-dev] [PATCH v6 1/2] netdev-dpdk: Add per virtqueue statistics.

2023-01-06 Thread Maxime Coquelin
On 1/5/23 21:24, David Marchand wrote: The DPDK vhost-user library maintains more granular per queue stats which can replace what OVS was providing for vhost-user ports. The benefits for OVS: - OVS can skip parsing packet sizes on the rx side, - dev->stats_lock won't be taken in rx/tx code un

[ovs-dev] [PATCH v3 0/2] Add pmd sleeping.

2023-01-06 Thread Kevin Traynor
This series is to allow PMD threads to sleep under no and low load conditions. GHA: https://github.com/kevintraynor/ovs/actions/runs/3855738453 v3: - Renamed 'pmd-powersave-maxsleep' to 'pmd-maxsleep' - Removed 'pmd-powersave' param so 'pmd-maxsleep' can also be used to enable (max >0) and dis

[ovs-dev] [PATCH v3 1/2] util: Add non quiesce xnanosleep.

2023-01-06 Thread Kevin Traynor
xnanosleep forces the thread into quiesce state in anticipation that it will be sleeping for a considerable time and that the thread may need to quiesce before the sleep is finished. In some cases, a very short sleep may be requested and in that case the overhead of going to into quiesce state may

[ovs-dev] [PATCH v3 2/2] dpif-netdev: Add load based PMD sleeping.

2023-01-06 Thread Kevin Traynor
Sleep for an incremental amount of time if none of the Rx queues assigned to a PMD have at least half a batch of packets (i.e. 16 pkts) on an polling iteration of the PMD. Upon detecting the threshold of >= 16 pkts on an Rxq, reset the sleep time to zero (i.e. no sleep). Sleep time will be increa

Re: [ovs-dev] [PATCH v2] dpif-netdev: Load based PMD sleeping.

2023-01-06 Thread Kevin Traynor
On 21/12/2022 23:43, Ilya Maximets wrote: On 12/20/22 19:35, Kevin Traynor wrote: On 19/12/2022 16:18, Ilya Maximets wrote: On 12/16/22 18:50, Kevin Traynor wrote: Sleep for an incremental amount of time if none of the Rx queues assigned to a PMD have at least half a batch of packets (i.e. 16

Re: [ovs-dev] [PATCH v6 1/2] netdev-dpdk: Add per virtqueue statistics.

2023-01-06 Thread David Marchand
On Fri, Jan 6, 2023 at 2:40 PM Maxime Coquelin wrote: > On 1/5/23 21:24, David Marchand wrote: > > @@ -2589,34 +2534,27 @@ netdev_dpdk_filter_packet_len(struct netdev_dpdk > > *dev, struct rte_mbuf **pkts, > > > > static inline void > > netdev_dpdk_vhost_update_tx_counters(struct netdev_dpdk

[ovs-dev] [PATCH v7 1/2] netdev-dpdk: Add per virtqueue statistics.

2023-01-06 Thread David Marchand
The DPDK vhost-user library maintains more granular per queue stats which can replace what OVS was providing for vhost-user ports. The benefits for OVS: - OVS can skip parsing packet sizes on the rx side, - dev->stats_lock won't be taken in rx/tx code unless some packet is dropped, - vhost-user

[ovs-dev] [PATCH v7 2/2] netdev-dpdk: Drop coverage counter for vhost IRQs.

2023-01-06 Thread David Marchand
The vhost library now provides finegrained statistics for guest notifications: - notifications for buffer reclaim by the guest, - notifications for buffer availability to the guest, Example before this patch: $ ovs-appctl coverage/show | grep vhost_notification vhost_notification 0.0/sec

Re: [ovs-dev] [PATCH v2] utilities: Add USDT script to monitor dpif netlink execute message queuing.

2023-01-06 Thread Ilya Maximets
On 12/23/22 10:24, Eelco Chaudron wrote: > > > On 22 Dec 2022, at 17:14, Adrian Moreno wrote: > >> On 12/22/22 10:12, Eelco Chaudron wrote: >>> This patch adds the dpif_nl_exec_monitor.py script that will used the >>> existing dpif_netlink_operate__:op_flow_execute USDT probe to show >>> all DPI

Re: [ovs-dev] [PATCH v4] dpif: Fix tunnel key set for IPv6 tunnels with SLOW_ACTION.

2023-01-06 Thread Ilya Maximets
On 1/5/23 13:07, Eelco Chaudron wrote: > The dpif_execute_helper_cb() function is supposed to add the > OVS_ACTION_ATTR_SET(OVS_KEY_ATTR_TUNNEL()) action to the > list of actions when passing it down to the kernel. > > This function was only checking if the IPv4 destination > address was set, not

Re: [ovs-dev] [PATCH] treewide: Don't use non-portable '==' with test command.

2023-01-06 Thread Ilya Maximets
On 1/6/23 10:49, Eelco Chaudron wrote: > > > On 5 Jan 2023, at 15:12, Ilya Maximets wrote: > >> '==' is not defined by POSIX and not supported by some shells. >> This is causing test failures and potential other issues: >> >> ./tests/testsuite: 54: test: X2: unexpected operator >> ./tests/te

Re: [ovs-dev] [PATCH] Documentation: Fix links in the DPDK guide on physical ports.

2023-01-06 Thread Ilya Maximets
On 1/6/23 08:59, David Marchand wrote: > On Thu, Jan 5, 2023 at 8:34 PM Ilya Maximets wrote: >> >> The text enclosed in '<...>' supposed to be an actual link and not the >> name of the link. This generates incorrect links that lead nowhere. > > Indeed. > I was wondering if you have access to ope

Re: [ovs-dev] [PATCH ovn] MAINTAINERS: fix links

2023-01-06 Thread Mark Michelson
On 1/5/23 15:24, Han Zhou wrote: On Thu, Jan 5, 2023 at 12:13 PM Mark Michelson > wrote: > > On 1/5/23 02:36, Han Zhou wrote: > > > > > > On Thu, Dec 29, 2022 at 7:20 AM Igor Zhukov > >

Re: [ovs-dev] [PATCH] Documentation: Fix links in maintainers.rst.

2023-01-06 Thread Ilya Maximets
On 1/6/23 10:51, Eelco Chaudron wrote: > > > On 5 Jan 2023, at 20:42, Ilya Maximets wrote: > >> GitHub and Sphinx are parsing links differently. Sphinx knows about >> the overall documentation structure and all the sections defined in >> other docs, while GitHub is using direct rst 2 html conve

Re: [ovs-dev] [PATCH v9] tc: Add support for TCA_STATS_PKT64

2023-01-06 Thread Ilya Maximets
On 1/6/23 11:37, Eelco Chaudron wrote: > > > On 5 Jan 2023, at 21:24, Mike Pattrick wrote: > >> Currently tc offload flow packet counters will roll over every ~4 >> billion packets. This is because the packet counter in struct >> tc_stats provided by TCA_STATS_BASIC is a 32bit integer. >> >> Now

Re: [ovs-dev] [PATCH v9] tc: Add support for TCA_STATS_PKT64

2023-01-06 Thread William Zhao
Hi Mike, I have been actually testing with 2.17. In order to make your patch work I needed to modify the "nl_parse_single_action()" function by removing the "duplicate" code. But the proper way I guess is maybe including some patches that made that change in between. It would be definitely nice t

Re: [ovs-dev] [PATCH ovn v8 0/7] Support 2+ controllers on the same vswitchd

2023-01-06 Thread Mark Michelson
Hi Ihar, I've taken a fresh look at the series after the holidays, and the patches look good to merge: Acked-by: Mark Michelson I'm not going to claim I can predict every issue that might occur with this, but I think this is the ideal time to merge. It's early in the development cycle for

Re: [ovs-dev] [PATCH ovn] Documentation: Fix links in maintainers.rst.

2023-01-06 Thread Han Zhou
On Fri, Jan 6, 2023 at 3:55 AM Ilya Maximets wrote: > > GitHub and Sphinx are parsing links differently. Sphinx knows about > the overall documentation structure and all the sections defined in > other docs, while GitHub is using direct rst 2 html conversion and > doesn't know any of that. Sphin

Re: [ovs-dev] [PATCH v5 1/1] userspace: Add SRv6 tunnel support.

2023-01-06 Thread Ilya Maximets
On 1/6/23 08:58, Nobuhiro MIKI wrote: > > > On 2023/01/03 7:59, Ilya Maximets wrote: >> On 10/11/22 08:11, Nobuhiro MIKI wrote: >>> SRv6 (Segment Routing IPv6) tunnel vport is responsible >>> for encapsulation and decapsulation the inner packets with >>> IPv6 header and an extended header called

Re: [ovs-dev] [PATCH ovn 5/6] controller: only sample flow if Collector Set exists

2023-01-06 Thread Mark Michelson
The code change on its own is fine, so Acked-by: Mark Michelson I have a note down below. On 12/19/22 11:18, Adrian Moreno wrote: Adding a OFPACT_SAMPLE action to a flow is useless (and even detrimental in terms of performance) if a Flow_Sample_Collector_Set row does not exist with the corres

Re: [ovs-dev] [PATCH ovn 2/6] northd: fix unsampled drops and unit test

2023-01-06 Thread Mark Michelson
Acked-by: Mark Michelson On 12/19/22 11:18, Adrian Moreno wrote: Some drops were left unsampled and a change in IFS made the test fail to detect them. This patch fixes it. Fixes: a42c808f30b4 ("northd: add drop sampling") Signed-off-by: Adrian Moreno --- northd/northd.c | 17 ++-

Re: [ovs-dev] [PATCH ovn 2/6] northd: fix unsampled drops and unit test

2023-01-06 Thread Mark Michelson
Acked-by: Mark Michelson On 12/19/22 11:18, Adrian Moreno wrote: Some drops were left unsampled and a change in IFS made the test fail to detect them. This patch fixes it. Fixes: a42c808f30b4 ("northd: add drop sampling") Signed-off-by: Adrian Moreno --- northd/northd.c | 17 ++-

Re: [ovs-dev] [PATCH ovn 3/6] controller: add missing drop to loopback check table

2023-01-06 Thread Mark Michelson
Acked-by: Mark Michelson On 12/19/22 11:18, Adrian Moreno wrote: The drop was implicit (using empty actions). Make it explicit and sampled. Fixes: a42c808f30b4 ("northd: add drop sampling") Signed-off-by: Adrian Moreno --- controller/physical.c | 1 + 1 file changed, 1 insertion(+) diff -

Re: [ovs-dev] [PATCH ovn 4/6] controller: set sampling port to OFP_NONE for drops

2023-01-06 Thread Mark Michelson
For the code change itself, Acked-by: Mark Michelson I have a note about the commit message. On 12/19/22 11:18, Adrian Moreno wrote: The default zero value can lead to sampling errors if the pipeline sets an the input port to OFP_NONE during flow processing. The commit message seems to cont

Re: [ovs-dev] [PATCH ovn 6/6] controller: only sample pflow if Collector Set exists

2023-01-06 Thread Mark Michelson
Acked-by: Mark Michelson On 12/19/22 11:18, Adrian Moreno wrote: Make physical (pflow) engine node also depend on Flow_Sample_Collector_Set table and only enable flow sampling if the right collector set exists. Signed-off-by: Adrian Moreno --- controller/ovn-controller.c | 104 +

[ovs-dev] [PATCH ovn v9 0/8] Support 2+ controllers on the same vswitchd

2023-01-06 Thread Ihar Hrachyshka
This series adds support to run multiple ovn-controller instances using the same vswitchd instance. This may be used to reuse a single host level vswitchd installation to run multiple CMS (e.g. k8s and openstack), each having its own OVN stack running on a separate integration bridge. This setup m

[ovs-dev] [PATCH ovn v9 1/8] Include "chassis index" into tunnel port name

2023-01-06 Thread Ihar Hrachyshka
This is in preparation to support multiple separate controller instances with distinct chassis names operating on the same vswitchd instance. To avoid conflicts, this patch introduces a unique "index" (from 0-9a-z range) into the port name. Each chassis allocates a separate index for itself on sta

[ovs-dev] [PATCH ovn v9 3/8] Allow to override system-id via file

2023-01-06 Thread Ihar Hrachyshka
Before the patch, system-id could be configured via a global config option in ovsdb. This patch adds another option - configure system-id via a file. This is achieved by writing the desired system-id into the following file location: ${OVN_SYSCONFDIR}/system-id-override. The file is read on contro

[ovs-dev] [PATCH ovn v9 6/8] Don't delete patch ports that don't belong to br-int

2023-01-06 Thread Ihar Hrachyshka
Same as for tunnel ports, controllers should not touch OVN patch ports that don't belong to their active integration bridge (except when those are peers to corresponding patch ports). Signed-off-by: Ihar Hrachyshka --- controller/ovn-controller.c | 5 +++- controller/patch.c | 36 +

[ovs-dev] [PATCH ovn v9 4/8] Support passing chassis name via CLI

2023-01-06 Thread Ihar Hrachyshka
This patch adds support for the desired system-id (chassis name) to be passed via CLI: $ ovn-controller -n If passed, CLI overrides any settings stored in ovsdb or in system-id-override file. This may be useful when running multiple controller instances using the same vswitchd instance. Signed

[ovs-dev] [PATCH ovn v9 2/8] Support ovn-...- specific global ovsdb options

2023-01-06 Thread Ihar Hrachyshka
Before the patch, all controller instances were reading configuration from the same external-ids:ovn-* options. This patch adds support for distinct config otions for different chassis names stored in the same ovsdb global config object. To configure an option for a distinct chassis name, an admin

[ovs-dev] [PATCH ovn v9 7/8] Add connectivity test for 2 controllers on the same host

2023-01-06 Thread Ihar Hrachyshka
Signed-off-by: Ihar Hrachyshka --- tests/ovn-macros.at | 30 ++ tests/ovn.at| 137 ++-- 2 files changed, 137 insertions(+), 30 deletions(-) diff --git a/tests/ovn-macros.at b/tests/ovn-macros.at index 6933fe21d..ee942e8a6 100644 --- a/test

[ovs-dev] [PATCH ovn v9 8/8] Document experimental support for co-hosted controllers

2023-01-06 Thread Ihar Hrachyshka
Acked-by: Mark Michelson Signed-off-by: Ihar Hrachyshka --- NEWS| 2 ++ controller/ovn-controller.8.xml | 13 + 2 files changed, 15 insertions(+) diff --git a/NEWS b/NEWS index 27caf78d9..2e0d54ae6 100644 --- a/NEWS +++ b/NEWS @@ -1,5 +1,7 @@ Post v22.1

[ovs-dev] [PATCH ovn v9 5/8] Don't touch tunnel ports from a different br-int

2023-01-06 Thread Ihar Hrachyshka
When multiple controllers are running using the same vswitchd, controllers should delete only those tunnel ports that belong to the integration bridge that is managed by the controller instance. This makes sure multiple controllers don't step on each other when running using the same vswitchd inst

Re: [ovs-dev] [PATCH ovn v8 0/7] Support 2+ controllers on the same vswitchd

2023-01-06 Thread Ihar Hrachyshka
Thanks Mark, I appreciate the attention and agree that it would make sense to get this landed earlier in the release cycle. We tested the series for BGP scenarios in the last weeks, and I found at least one missing piece - patch ports were cleaned up by both controllers from all bridges, not just

[ovs-dev] [PATCH branch-2.17] tc: Add support for TCA_STATS_PKT64

2023-01-06 Thread Mike Pattrick
Currently tc offload flow packet counters will roll over every ~4 billion packets. This is because the packet counter in struct tc_stats provided by TCA_STATS_BASIC is a 32bit integer. Now we check for the optional TCA_STATS_PKT64 attribute which provides the full 64bit packet counter if the 32bit