Hi Ales, Dumitru Thanks for looking at this patch series. The goal would be to backport till 24.03.
Sorry for the confusion - I only tested that cherry-picking the patches were correct on 25.03, 24.09 and 24.03. Cherry-pick worked on 24.09 & 25.03, and required a customer backport on 24.03. However, as you indicated, git am fails on 25.03 & 24.09. So, I'll send customer patches for those two branches as well. Finally, please note that the test "pod to pod with localnet_learn_fdb", which was already flaky, might be more flaky with the two patches from this series. An upstream patch fixing the flaky behavior has been posted for upstream/main ( http://patchwork.ozlabs.org/project/ovn/patch/[email protected]/) and will need to be backported as well. Thanks Xavier On Thu, Aug 21, 2025 at 5:08 PM Dumitru Ceara <[email protected]> wrote: > On 8/21/25 1:09 PM, Xavier Simonart via dev wrote: > > vif1(hv1) - ls - localnet - ls - vif2(hv2) > > > > In this configuration, with one logical switch with two vif (vif1 on > > hv1 and vif2 on hv2), and a localnet port (localnet), traffic from vif1 > to > > vif2 goes through localnet. A vif entry update in fdb was lost if the sb > > transaction was failing. > > > > A transaction could fail in the following scenario: > > - When packet from vif1 is received by br-int on hv1, vif1_mac is > inserted in > > FDB with port=vif1 [1]. > > - When the packet is received on hv2 by localnet, if it is received > before the > > FDB update [1], then vif1_mac is inserted in FDB with port=localnet > [2]. > > This transaction, when sent, will fail [A]. The transaction might be > sent > > later (in some time) as sent by ovn-controller (while packet was > forwarded > > by OVS w/o OVN intervention). > > - When vif2 replies (e.g. ARP reply, echo reply), vif2_mac is inserted in > > FDB [3] with port=vif2. If the reply packet is handled in hv2 before > FDB > > update [2] is sent, both updates [2] and [3] are sent at the same time. > > Hence, if the transaction fails [A], vif2_mac is not inserted in FDB. > > - Finally, when reply hits hv1, if vif2_mac is not in FDB, an entry for > > vif2_mac will be inserted in FDB with port=localnet. > > > > Hence, at the end of the game, the FDB entry for vif2_mac is localnet, > and > > vif2 stops receiving packets until it sends one (and updates FDB with > > port=vif2). > > > > This patch fixes this by resubmitting FDB updates for VIF entries if the > > transaction failed. > > > > Reported-at: https://issues.redhat.com/browse/FDP-1341 > > Signed-off-by: Xavier Simonart <[email protected]> > > Signed-off-by: Ales Musil <[email protected]> > > (cherry picked from commit 7ff2c6be57493ef438d893109b24f65571ca641e) > > --- > > Hi Xavier, > > Thanks for the backport. The original commit is only on main, was this > backport patch intended for both 25.03 and 24.03 branches? It doesn't > apply cleanly on 25.03 and the conflict is non-trivial. > > We need at least a backport patch for 25.03 before we can apply this > one. Would you be able to prepare one for 25.03 as well? > > Thanks, > Dumitru > > _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
