Bug 1801798

Summary: VLAN cannot be added to existing bond interface configured in a custom Mode 1 if the option "fail_over_mac=active" is set
Product: Red Hat Enterprise Linux 8 Reporter: Michael Burman <mburman>
Component: nmstateAssignee: Gris Ge <fge>
Status: CLOSED ERRATA QA Contact: Mingyu Shi <mshi>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 8.2CC: dholler, ferferna, jiji, jishi, network-qe, till
Target Milestone: rcFlags: pm-rhel: mirror+
Target Release: 8.2   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: nmstate-0.2.6-1.el8 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2020-04-28 16:00:37 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:
Bug Depends On: 1802424    
Bug Blocks: 1800592, 1801821    

Description Michael Burman 2020-02-11 16:17:05 UTC
Description of problem:
VLAN cannot be added to existing bond interface configured in a custom Mode 1 if the option "fail_over_mac=active" is set

- For vlan bridge:
MainProcess|jsonrpc/5::INFO::2020-02-11 11:07:39,466::configurator::192::root::(_setup_nmstate) Desired state: {'interfaces': [{'name': 'bond0', 'type': 'bond', 'state': '
up', 'link-aggregation': {'slaves': ['ens4f2', 'ens4f3'], 'options': {'fail_over_mac': '1', 'miimon': '100'}, 'mode': 'active-backup'}, 'mtu': 1500}, {'vlan': {'id': 335, 
'base-iface': 'bond0'}, 'name': 'bond0.335', 'type': 'vlan', 'state': 'up', 'mtu': 1500, 'ipv4': {'enabled': False}, 'ipv6': {'enabled': False}}, {'name': 'ovirtmgmt'}, {'
name': 'vlan1', 'type': 'linux-bridge', 'state': 'up', 'mtu': 1500, 'bridge': {'port': [{'name': 'bond0.335'}], 'options': {'stp': {'enabled': False}}}, 'ipv4': {'enabled'
: False}, 'ipv6': {'enabled': False}}]}

MainProcess|jsonrpc/5::DEBUG::2020-02-11 11:07:39,683::connection::217::root::(_active_connection_callback) Connection activation initiated: dev=bond0, con-state=<enum NM_ACTIVE_CONNECTION_STATE_ACTIVATING of type NM.ActiveConnectionState>
MainProcess|jsonrpc/5::ERROR::2020-02-11 11:07:40,301::nmclient::178::root::(quit) NM main-loop aborted: Connection activation failed on bond0: reason=<enum NM_ACTIVE_CONNECTION_STATE_REASON_DEVICE_DISCONNECTED of type NM.ActiveConnectionStateReason>

libnmstate.error.NmstateLibnmError: Unexpected failure of libnm when running the mainloop: run execution


- For vlan
MainProcess|jsonrpc/5::INFO::2020-02-11 11:14:44,659::configurator::192::root::(_setup_nmstate) Desired state: {'interfaces': [{'name': 'bond0', 'type': 'bond', 'state': '
up', 'link-aggregation': {'slaves': ['ens4f2', 'ens4f3'], 'options': {'fail_over_mac': '1', 'miimon': '100'}, 'mode': 'active-backup'}, 'mtu': 1500}, {'vlan': {'id': 162, 
'base-iface': 'bond0'}, 'name': 'bond0.162', 'type': 'vlan', 'state': 'up', 'mtu': 1500, 'ipv4': {'enabled': False}, 'ipv6': {'enabled': False}}, {'name': 'ovirtmgmt'}]}

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

How reproducible:
100%

Steps to Reproduce:
1. Create a custom bond mode 1 interface with custom option fail_over_mac=active
2. Try to attach vlan bridge or vlan network on top of it

Actual results:
nmstate explodes and fail to create desired connection

Expected results:
Should work

Comment 2 Gris Ge 2020-02-12 12:41:57 UTC
This is related to the `fail_over_mac: "1"` option.

Even without VLAN, apply the same yml file again will cause the same failure.


Upstream tracking issue is: https://github.com/nmstate/nmstate/issues/781

Comment 3 Gris Ge 2020-02-13 06:04:24 UTC
Could be a bug of NetworkManager: https://bugzilla.redhat.com/show_bug.cgi?id=1802424

Waiting NetworkManager's feedback.

Comment 4 Gris Ge 2020-02-21 06:16:24 UTC
Patch sent to upstream for review: https://github.com/nmstate/nmstate/pull/827

Comment 9 errata-xmlrpc 2020-04-28 16:00: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, 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-2020:1696