Bug 2227875

Summary: nmstate persist-nic-names uses bond mac for subordinate instead of permanent HW addr
Product: Red Hat Enterprise Linux 9 Reporter: Curtis Taylor <cutaylor>
Component: nmstateAssignee: NetworkManager Development Team <nm-team>
Status: CLOSED MIGRATED QA Contact: Mingyu Shi <mshi>
Severity: high Docs Contact:
Priority: high    
Version: 9.2CC: ferferna, jiji, jishi, mcolombo, network-qe, sfaye, till, wrussell
Target Milestone: rcKeywords: MigratedToJIRA, Triaged
Target Release: ---Flags: pm-rhel: mirror+
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2023-08-21 15:30:24 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Curtis Taylor 2023-07-31 18:19:57 UTC
Description of problem:
nmstatectl's new persist-nic-names tool (https://github.com/nmstate/nmstate/pull/2301/commits/45a382e2723749c8955fa208cb7e40620fb80d45#diff-037c6f719babb7a702deb8727cf5b1e6f4db57014a1e2d7808ad02b0e11f5b70R101-R109) uses bond's MAC instead of NIC's permanent hw address when creating link for subordinates, resulting in link files containing the wrong MAC address.

e.g.

nmstatectl::persist_nic] Persisting the interface with MAC B8:3F:D2:86:13:D0 to interface name eno34
nmstatectl::persist_nic] Persisting the interface with MAC B8:3F:D2:86:13:D0 to interface name eno34
nmstatectl::persist_nic] Persisting the interface with MAC B8:3F:D2:86:13:D0 to interface name eno33
nmstatectl::persist_nic] Persisting the interface with MAC B8:3F:D2:86:13:D0 to interface name eno33

Even when yaml contains:

apiVersion: agent-install.openshift.io/v1beta1
kind: NMStateConfig
metadata:
  labels:
    infraenvs.agent-install.openshift.io: lab-stable-spoke1-dc-iad2
    agent-install.openshift.io/bmh: node06
    clustername: lab-stable-spoke1-dc-iad2
  name: node06
  namespace: lab-stable-spoke1-dc-iad2
spec:
  config:
    interfaces:
    - ipv4:
        auto-dns: true
        auto-gateway: true
        auto-routes: true
        enabled: true
        dhcp: true
      link-aggregation:
        mode: 802.3ad
        options:
          miimon: "100"
        port:
        - eno33
        - eno34
      name: bond0
      state: up
      type: bond
      mtu: 9000
  interfaces:
  - macAddress: B8:3F:D2:86:13:D0
    name: eno33
  - macAddress: B8:3F:D2:86:13:D1
    name: eno34


Version-Release number of selected component (if applicable):
NetworkManager-libnm-1.42.2-3.el9_2.x86_64                  Fri Jul 14 00:16:28 2023


Actual results:
eno34 becomes eno34np1 instead of eno34:

etc/systemd/network/98-nmstate-eno33.link
  # Generated by nmstate
  [Match]
  MACAddress=B8:3F:D2:86:13:D0
  
  [Link]
  Name=eno33

etc/systemd/network/98-nmstate-eno34.link
  # Generated by nmstate
  [Match]
  MACAddress=B8:3F:D2:86:13:D0
  
  [Link]
  Name=eno34


Expected results:
 
eno34 not eno34np1

etc/systemd/network/98-nmstate-eno34.link
  # Generated by nmstate
  [Match]
  MACAddress=B8:3F:D2:86:13:D1 ##<<<---- permanent HW address
  
  [Link]
  Name=eno34

Additional info:

Comment 6 RHEL Program Management 2023-08-21 15:30:04 UTC
Issue migration from Bugzilla to Jira is in process at this time. This will be the last message in Jira copied from the Bugzilla bug.

Comment 7 RHEL Program Management 2023-08-21 15:30:24 UTC
This BZ has been automatically migrated to the issues.redhat.com Red Hat Issue Tracker. All future work related to this report will be managed there.

To find the migrated issue, look in the "Links" section for a direct link to the new issue location. The issue key will have an icon of 2 footprints next to it, and begin with "RHEL-" followed by an integer.  You can also find this issue by visiting https://issues.redhat.com/issues/?jql= and searching the "Bugzilla Bug" field for this BZ's number, e.g. a search like:

"Bugzilla Bug" = 1234567

In the event you have trouble locating or viewing this issue, you can file an issue by sending mail to rh-issues.