Skip to content

Full sync with 4.19#7

Merged
jluhrsen merged 235 commits into
release-4.18from
syncs-with-dups
Apr 3, 2025
Merged

Full sync with 4.19#7
jluhrsen merged 235 commits into
release-4.18from
syncs-with-dups

Conversation

@jluhrsen

@jluhrsen jluhrsen commented Apr 3, 2025

Copy link
Copy Markdown
Owner

this is a git merge -X theirs release-4.19 which contains 53 duplicate commits that came in with
the cherry-pick bot during the GA time crunch for 4.18 as well as any one-off commits that were let
in.

❯ git log -n300 --pretty=format:"%s" | sort | uniq -c | awk '$1>1' | wc -l

53
❯ git --no-pager log -n300 --pretty=format:"%s" | sort | uniq -d | while IFS= read -r msg; do
echo "DUP: $msg"
git --no-pager log -n300 --grep="$(printf '%s\n' "$msg" | sed 's/[]/$*.^[]/&/g')" --pretty=format:"%h " | sed 's/ $/\n/'
echo "-----"
done

DUP: Add network name conflict e2e
0a3d0ca

45944ef

DUP: Add some more ExpectNoError checks to the e2e tests
1a9ba9a

0e86ace

e7b36a0

DUP: Bump OVN to 24.09.2-14 for FDP-1131

DUP: Change dynamic_neigh_routers to false for the Interconnect topology.

DUP: change slack url to point to the cloud-native workspace
0907099

c7c7b7d

123d692

DUP: Check if cluster manager controller has retry pod framework
51322a0

4e18d5b

3af5ebb

DUP: Clone frrFactory in ShallowClone
42ecd7a

f409609

21cbc5d

DUP: Clone raFactory in ShallowClone
9be70ca

61534bd

b65a547

DUP: crd, cudn: Ensure matching toplogy and topology-config
1dc966b

96b8798

DUP: Do not get active network for non-primary controllers
fb74e44

1234953

DUP: e2e, kubevirt, UDN: Add failed lm test for l2 pudn
5433730

dd96d12

DUP: e2e, kubevirt, UDN: Add north south traffic test
6ab1f31

f7ce763

DUP: e2e, kubevirt, UDN: Check e/w tcp not broken after LM

DUP: e2e, kubevirt, UDN: Check migration with snat-per-pod
0c8610c

c9ff16e

DUP: e2e, kubevirt, UDN: Check n/s egress not broken after LM

DUP: e2e, kubevirt, UDN: Check n/s tcp not broken after LM

DUP: e2e, kubevirt, UDN: Increase VM's memory
3115bae

ad9391f

DUP: e2e, kubevirt, UDN: Use fedora and iperf
43c6087

a91e2b2

DUP: Enrich CNI request pod UID error with the mismatched UIDs
d10321d

6525e7e

2d91da3

DUP: factory/handler: avoid deadlock on shutdown.

DUP: factory: Set default event queue size to 100.

DUP: Fix CM-EIP controller flake
ee20311

8973f8e

DUP: Fix conflicting network prefix for (C)UDNs.

DUP: Fix CUDN unit test for status matching
b3fc2c9

5f65e69

DUP: Fix EIP UT Flake: Don't delete the node on which pod lives
1b3313c

a31f477

e0c6245

DUP: Fixes 1 minute delay for primary UDN controllers to start
2a8db09

12cb69b

3fbbc5b

DUP: Fixes starting services/multinetpolicy on wrong controllers

DUP: Fix Kind IPV6 deplyoment with RUN_IN_CONTAINER
6b21a40

ce61884

DUP: Fix some nftables checking in the unit tests
fc5d937

500dd72

DUP: Fix UDN and CUDN subnet validation
97e762b

eb3eeeb

a2cbe9d

DUP: Get the network ID from the NAD for zone/node ctrls

DUP: Handles unspecified protocol in network policy port
bc7e86e

c0e3667

66c768f

DUP: Improve annotation changes detection
bd18b0f

13814c8

DUP: Improves multiplexed internal informer performance
faec7a0

0e48baf

DUP: kubevirt, e2e: Check ipv4 gateway mac after lm
a2599d7

0a79dab

DUP: kubevirt: Function to reconcile IPv4 gateway mac
173215e

4ab5dfe

DUP: kv, e2e: Keep underlay with delete-namespace=false
7eea919

7e5ad64

DUP: kv, e2e, localnet: Activate tests
6a69eeb

b08bd37

DUP: kv, e2e: Reduce live migration disruption treshold
04e3dba

d40191e

DUP: kv, localnet: Swich LSP Enabled field on migration
8365282

afb4549

DUP: kv, udn: Remove addresses when we disable LSP
cc55a58

62624ab

DUP: Make dbus controller more efficient
9c2fbb1

bd5fff3

d59d69c

DUP: Make open default ports semantically correct
b842cd5

ce13e95

DUP: observability-lib/model: reduce dependencies by duplicating constants

DUP: Reconcile pending pods when a NAD is added to an existing network
5cd56cf

8dd9eb3

7320869

DUP: Reimplement e2epod.DeletePodWithWait to correctly handle pods that get restarted.

DUP: Revert "hard code disable-udn-host-isolation to "true""
3441113

d108b05

DUP: Reverts 49e141a0a41793f94750a8bc998af05b7033dd91
877ed9b

adfa997

DUP: Slightly fix UDN local gateway masquerade rules (and unit tests)
be77a99

d59150a

DUP: test/e2e, go.mod: run go mod tidy

DUP: Update OVN to FDP25.A.1 24.09.2-41.

DUP: Use partial parsing for network sepcific CIDRs
c361380

f13b244

DUP: UserDefinedNetworks: Ignore pods and namespaces from different networks
bc37ea9

715675c

AOS Automation Release Team and others added 30 commits December 6, 2024 01:15
The document is refactored to meet the ovn-org feature template [0].

[0]
https://github.com/ovn-org/ovn-kubernetes/blob/master/docs/features/template.md

Signed-off-by: Ram Lavi <ralavi@redhat.com>
Signed-off-by: Ram Lavi <ralavi@redhat.com>
This picks up the following relevant bug fixes:
https://issues.redhat.com/browse/FDP-906
"ovn-controller: lib/ovsdb-idl.c:3596: assertion row->new_datum != NULL failed in ovsdb_idl_txn_write__()"
  6448f5e364 pinctrl: Skip non-local mac bindings in run_buffered_binding().
  ea35347320 pinctrl: Skip deleted mac bindings in run_buffered_binding().
  33a6ae53f4 pinctrl: Use correct map size in pinctrl_handle_put_fdb().
  8eaa7d5991 controller: Fix "use after free" issue in statctrl_run().
  8579859f51 mac-cache: Properly handle deletion of SB mac_bindings.

https://issues.redhat.com/browse/FDP-752
"ovn-northd IPAM incorrectly reports duplicate IP when part of excluded_ips"
  2a24b03f7f ipam: Do not report error for static assigned IPs.

https://issues.redhat.com/browse/FDP-786
"When an ECMP symmetric route is removed, northd removes all logical flows from SBDB for ECMP"
  7b00627433 northd: Respect --ecmp-symmetric-reply for single routes.

Signed-off-by: Dumitru Ceara <dceara@redhat.com>
Signed-off-by: arkadeepsen <arsen@redhat.com>
OCPBUGS-42707: Bump OVN to ovn24.09-24.09.1-10.el9fdp
Signed-off-by: Flavio Fernandes <ffernandes@nvidia.com>
Signed-off-by: Flavio Fernandes <ffernandes@nvidia.com>
OCPBUGS-48330,OCPBUGS-42609,OCPBUGS-46585,SDN-4930: Downstream Merge [01-23-2025]
Fixes a null pointer exception when network policy port has no protocol.
If the protocol is missing in the network policy port definition, it
should be assumed to be TCP.

Signed-off-by: Tim Rozet <trozet@redhat.com>
ShallowClone has to copy all factories.

Signed-off-by: Patryk Diak <pdiak@redhat.com>
Commit 6dda0b5 ("factory: Bump the event queue size to 1K.")
increased the event queue size to 1K events.  However, in combination
with fe17136 ("factory: Reduce contention on informer locks.")
which configures 201 internal informers this might end up using too much
memory in cases when controllers cannot consume events as fast as
they're queued by the kube API.

For each kubernetes API object type we consume:
  N_internal_informers x N_queues x N_events x sizeof(event)
memory.

That currently translates to:
  N_internal_informers = 201
  N_queues = 15
  N_events = 1000
  sizeof(event) = 32B
  => ~92MB of memory per object type

Given that ovn-kubernetes processes need to be informed about multiple
object types this can grow to a significantly large number when
controllers that are supposed to consume events from the internal
informer queues are slow.

Reduce the queue size, making it 100, in order to lower the worst case
scenario memory usage:
  N_internal_informers = 201
  N_queues = 15
  N_events = 100
  sizeof(event) = 32B
  => ~9.2MB of memory per object type

Signed-off-by: Dumitru Ceara <dceara@redhat.com>
Signed-off-by: Patryk Diak <pdiak@redhat.com>
factory: Set default event queue size to 100.
Previously, if a new NAD was added to an existing network after a pod
referencing it, the pod would never start. This is fixed by reconciling
pending pods when the secondary network controller reconciles a new NAD.

Signed-off-by: Patryk Diak <pdiak@redhat.com>
Fix doc: Replace ovn-org with ovn-kubernetes to reflect repo move
Reconcile pending pods when a NAD is added to an existing network
Fixes NPE seen at:
openshift#2427 (comment)

Certain network types may not have a pod handler or retry framework for
cluster manager.

Signed-off-by: Tim Rozet <trozet@redhat.com>
Fixes NPE seen at:
openshift#2427 (comment)

Certain network types may not have a pod handler or retry framework for
cluster manager.

Signed-off-by: Tim Rozet <trozet@redhat.com>
SDN-4930: Downstream Merge [01-28-2025]
Compare annotations directly if possible.
For network specific map entries only compare raw json
entries without parsing the map in full.

Co-authored-by: Tim Rozet <trozet@redhat.com>
Signed-off-by: Patryk Diak <pdiak@redhat.com>
Instead of always parsing all node/join subnets
parse the raw json map and only compute the results
for the affected network.

Signed-off-by: Patryk Diak <pdiak@redhat.com>
Signed-off-by: Patryk Diak <pdiak@redhat.com>
jcaamano and others added 16 commits March 19, 2025 18:17
As is not sensitive or have dependencies with any other thing

Signed-off-by: Jaime Caamaño Ruiz <jcaamano@redhat.com>
These are types that are used by both the gateway and the management
port code. Export them as the plan is to have management port on its own
package.

Signed-off-by: Jaime Caamaño Ruiz <jcaamano@redhat.com>
There is a bug in ParseDump that fails to parse if interface names are
quoted. We want to use ParseDump on our tests. Since our interface names
specifically don't need to be quoted, remove the quotes.

Signed-off-by: Jaime Caamaño Ruiz <jcaamano@redhat.com>
These tests need as precondition the management port nft entities. Use
knftables.ParseDump instead of setting up a fully fledged management
port.

Signed-off-by: Jaime Caamaño Ruiz <jcaamano@redhat.com>
Add the new management port package interface and use it externally.

Signed-off-by: Jaime Caamaño Ruiz <jcaamano@redhat.com>
Move the existing implementaiton to a new package. It should be
functionally equivalent except:

* nft sets are configured as early as possible, the rest is configured
  upon Start (synchronously)
* moved management port routing table, rules, routes etc from gateway
  code to this package, configued upon Start (synchronously)

Signed-off-by: Jaime Caamaño Ruiz <jcaamano@redhat.com>
Signed-off-by: Jaime Caamaño Ruiz <jcaamano@redhat.com>
Multinetpol: update to the latest API version that adds endPort
Signed-off-by: Surya Seetharaman <suryaseetharaman.9@gmail.com>
This contains the following relevant changes:
  - controller: Fix active mac-binding refresh for IPv6.
  - controller: Send ARP/ND for stale mac_bindings entries. (#FDP-1135)
    https://issues.redhat.com/browse/FDP-1135
  - northd: Fix action parsing in build_lb_vip_actions(). (#FDP-1095)
    https://issues.redhat.com/browse/FDP-1095
  - northd: Fix missing tier related ACL flows. (#FDP-1154)
    https://issues.redhat.com/browse/FDP-1154
  - mac-cache: Fix expiration of active FDB entry due to skipped update. (#FDP-1132)
    https://issues.redhat.com/browse/FDP-1132
  - mac-cache: Fix expiration of active MAC binding due to skipped update. (#FDP-1130)
    https://issues.redhat.com/browse/FDP-1130
  - mac-cache: Fix MAC binding entry lookup for timestamp refresh. (#FDP-1131)
    https://issues.redhat.com/browse/FDP-1131

Signed-off-by: Dumitru Ceara <dceara@redhat.com>
OCPBUGS-48678: Update OVN to FDP25.A.1 24.09.2-41
OCPBUGS-54245, SDN-5772: Downstream merge 2025-03-21
…openshift-4.19-ose-ovn-kubernetes

OCPBUGS-45741: Updating ose-ovn-kubernetes-container image to be consistent with ART for 4.19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment