Bug 1895865 - ad_actor_system as multicast address is written into NM profile
Summary: ad_actor_system as multicast address is written into NM profile
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 8
Classification: Red Hat
Component: nmstate
Version: 8.4
Hardware: Unspecified
OS: Unspecified
low
low
Target Milestone: rc
: 8.4
Assignee: Gris Ge
QA Contact: Mingyu Shi
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2020-11-09 10:14 UTC by Mingyu Shi
Modified: 2021-11-09 20:13 UTC (History)
5 users (show)

Fixed In Version:
Doc Type: No Doc Update
Doc Text:
Clone Of:
Environment:
Last Closed: 2021-11-09 17:42:37 UTC
Type: Bug
Target Upstream Version:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Github nmstate nmstate pull 1618 0 None open bond: Handle multicast mac address of ad_actor_system 2021-06-01 11:56:39 UTC
Red Hat Product Errata RHBA-2021:4157 0 None None None 2021-11-09 17:42:47 UTC

Description Mingyu Shi 2020-11-09 10:14:34 UTC
Description of problem:
ad_actor_system as multicast address is also invalid. Though it doesn't work when applying with nmstate, ad_actor_system=$mcast_addr is also written into NM profile.
Similar as #bz1887518 , we should:
1. raise an error of its invalidation
or
2. just warn it as invalid and don't write it into NM profile

Version-Release number of selected component (if applicable):
nmstate-0.4.1-2.el8.noarch

NetworkManager-1.28.0-0.1.el8.x86_64
nispor-0.6.1-2.el8.x86_64
DISTRO=RHEL-8.4.0-20201103.d.0
Linux hp-dl380g10-02.rhts.eng.pek2.redhat.com 4.18.0-241.el8.dt1.x86_64 #1 SMP Mon Nov 2 08:24:31 EST 2020 x86_64 x86_64 x86_64 GNU/Linux


How reproducible:
100%

Steps to Reproduce:
echo "---
interfaces:
- name: bond0
  type: bond
  state: up
  link-aggregation:
    mode: 802.3ad
    options:
      ad_actor_system: 01:00:5e:01:01:01" | nmstatectl set
nmcli con show bond0 | grep ad_actor_system

Actual results:
# nmcli con show bond0 | grep ad_actor_system
bond.options:                           mode=802.3ad,ad_actor_system=01:00:5e:01:01:01

Expected results:
As 1 or 2 in 'Description of problem' part

Additional info:
A warning can be seen:
2020-11-09 18:11:34,375 root         WARNING  Desire iface bond0 bond option ad_actor_system=01:00:5e:01:01:01 does not match with kernel value: 00:00:00:00:00:00

Comment 1 Mingyu Shi 2021-06-04 08:34:26 UTC
Pretested with versions:
nmstate-1.1.0-0.20210601115659729461.pr1618.50.g4dac668.el8.noarch
nispor-1.1.0-1.el8.x86_64
NetworkManager-1.32.0-0.4.el8.x86_64

echo "---                                  
interfaces:
- name: bond0
  type: bond
  state: up
  link-aggregation:
    mode: 802.3ad
    options:
      ad_actor_system: 01:00:5e:01:01:01" | nmstatectl set
/usr/lib/python3.6/site-packages/nmstatectl/nmstatectl.py:325: UserWarning: Using 'set' is deprecated, use 'apply' instead.
  warnings.warn("Using 'set' is deprecated, use 'apply' instead.")
2021-06-04 16:32:54,860 root         DEBUG    Nmstate version: 1.1.0
2021-06-04 16:32:54,860 root         DEBUG    Applying desire state: {'interfaces': [{'name': 'bond0', 'type': 'bond', 'state': 'up', 'link-aggregation': {'mode': '802.3ad', 'options': {'ad_actor_system': '01:00:5e:01:01:01'}}}]}
2021-06-04 16:32:54,935 root         DEBUG    NetworkManager version 1.31.5
Unhandled IFLA_INFO_DATA for iface type Other("Ipoib")
Unhandled IFLA_INFO_DATA for iface type Other("Ipoib")
2021-06-04 16:32:54,942 root         DEBUG    Async action: Retrieve applied config: ethernet eno1 started
2021-06-04 16:32:54,946 root         DEBUG    Async action: Retrieve applied config: ethernet eno1 finished
2021-06-04 16:32:54,948 root         DEBUG    Interface ethernet.eno1 found. Merging the interface information.
2021-06-04 16:32:54,949 root         DEBUG    Interface ethernet.eno2 found. Merging the interface information.
2021-06-04 16:32:54,949 root         DEBUG    Interface ethernet.eno3 found. Merging the interface information.
2021-06-04 16:32:54,949 root         DEBUG    Interface ethernet.eno4 found. Merging the interface information.
2021-06-04 16:32:54,949 root         DEBUG    Interface ethernet.ens1f0 found. Merging the interface information.
2021-06-04 16:32:54,949 root         DEBUG    Interface ethernet.ens1f1 found. Merging the interface information.
2021-06-04 16:32:54,949 root         DEBUG    Interface ovs-interface.ovsbr0 found. Merging the interface information.
2021-06-04 16:32:54,949 root         DEBUG    Interface ovs-interface.ovsbr0 found. Merging the interface information.
Unhandled IFLA_INFO_DATA for iface type Other("Ipoib")
Unhandled IFLA_INFO_DATA for iface type Other("Ipoib")
Unhandled IFLA_INFO_DATA for iface type Other("Ipoib")
Unhandled IFLA_INFO_DATA for iface type Other("Ipoib")
Traceback (most recent call last):
  File "/usr/bin/nmstatectl", line 11, in <module>
    load_entry_point('nmstate==1.1.0', 'console_scripts', 'nmstatectl')()
  File "/usr/lib/python3.6/site-packages/nmstatectl/nmstatectl.py", line 73, in main
    return args.func(args)
  File "/usr/lib/python3.6/site-packages/nmstatectl/nmstatectl.py", line 326, in set
    return apply(args)
  File "/usr/lib/python3.6/site-packages/nmstatectl/nmstatectl.py", line 354, in apply
    args.save_to_disk,
  File "/usr/lib/python3.6/site-packages/nmstatectl/nmstatectl.py", line 407, in apply_state
    save_to_disk=save_to_disk,
  File "/usr/lib/python3.6/site-packages/libnmstate/netapplier.py", line 78, in apply
    desired_state, ignored_ifnames, current_state, save_to_disk
  File "/usr/lib/python3.6/site-packages/libnmstate/net_state.py", line 51, in __init__
    gen_conf_mode,
  File "/usr/lib/python3.6/site-packages/libnmstate/ifaces/ifaces.py", line 163, in __init__
    iface.pre_edit_validation_and_cleanup()
  File "/usr/lib/python3.6/site-packages/libnmstate/ifaces/bond.py", line 98, in pre_edit_validation_and_cleanup
    self._validate_ad_actor_system_mac_address()
  File "/usr/lib/python3.6/site-packages/libnmstate/ifaces/bond.py", line 250, in _validate_ad_actor_system_mac_address
    "The ad_actor_system bond option cannot be an IANA "
libnmstate.error.NmstateValueError: The ad_actor_system bond option cannot be an IANA multicast address(prefix with 01:00:5E)

Comment 4 Mingyu Shi 2021-06-30 02:17:15 UTC
Verified with versions:
nmstate-1.1.0-0.5.alpha4.el8.noarch
nispor-1.1.1-1.el8.x86_64
NetworkManager-1.32.0-1.el8.x86_64

Same with #commit1

Comment 6 errata-xmlrpc 2021-11-09 17:42:37 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (nmstate bug fix and enhancement update), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2021:4157


Note You need to log in before you can comment on or make changes to this bug.