Uploaded image for project: 'OpenShift Bugs'
  1. OpenShift Bugs
  2. OCPBUGS-46069

[OVN] handle case when br-ex MAC != bond MAC

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Undefined Undefined
    • None
    • 4.18
    • None
    • Moderate
    • No
    • False
    • Hide

      None

      Show
      None

      Description of problem:

      Baremetal always uses bonding with static IPs.

      We require bond MAC == br-ex MAC because of old bugs.

      Bug 2096413 - br-ex not created due to default bond interface having a different mac address than expected
      https://bugzilla.redhat.com/show_bug.cgi?id=2096413
      https://github.com/openshift/machine-config-operator/pull/3202

      However with nmstate and OPNET-510 OVN no longer configures br-ex directly.

      Because of the requirement we don't test unequal MACs so we don't know what OVN will do.

      We should either alert when the MACs don't match or have OVN change the br-ex MAC itself.

      ovs-vsctl set bridge br-ex other-config:hwaddr=$(cat /sys/class/net/bond0/address)
      

      Version-Release number of selected component (if applicable):

      
      4.18.0-0.nightly-2024-12-04-113014
        

      How reproducible:

      Always

      Steps to Reproduce:
      1. create nmstate with copy-from-mac: bond0

      interfaces:
      - name: bond0
        type: bond
        state: up
        ipv4:
          enabled: false
        link-aggregation:
          mode: balance-xor
          options:
            xmit_hash_policy: vlan+srcmac
            balance-slb: 1
          port:
          - eno2
          - eno3
      - name: br-ex
        type: ovs-bridge
        state: up
        ipv4:
          enabled: false
          dhcp: false
        ipv6:
          enabled: false
          dhcp: false
        bridge:
          port:
          - name: bond0
          - name: br-ex
      - name: br-ex
        type: ovs-interface
        state: up
        copy-mac-from: bond0
        ipv4:
          enabled: true
          address:
          - ip: "192.168.111.110"
            prefix-length: 24
        ipv6:
          enabled: false
          dhcp: false
      - name: eno1
        type: interface
        state: up
        ipv4:
          enabled: false
        ipv6:
          enabled: false
      dns-resolver:
        config:
          server:
          - 192.168.111.1
      
      

      2. reboot until you hit a race condition
      3.

      Actual results:

      bond0 MAC != br-ex MAC

      Expected results:

      The MACs should match.

              bnemec@redhat.com Benjamin Nemec
              rbrattai@redhat.com Ross Brattain
              Anurag Saxena Anurag Saxena
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Created:
                Updated: