Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.

Bug 1801821

Summary: Network cannot be added to existing bond interface configured in a custom Mode 1 if the option "fail_over_mac=active" is set
Product: [oVirt] vdsm Reporter: Michael Burman <mburman>
Component: CoreAssignee: Ales Musil <amusil>
Status: CLOSED CURRENTRELEASE QA Contact: Michael Burman <mburman>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 4.40.0CC: bugs, dholler, mperina
Target Milestone: ovirt-4.4.0Flags: mperina: ovirt-4.4?
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: No Doc Update
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2020-05-20 20:03:11 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: Network RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1801798    
Bug Blocks:    

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

It's not possible to attach network to custom bond mode 1 with custom options 
fail_over_mac=active

Version-Release number of selected component (if applicable):
vdsm-4.40.2-1.el8ev.x86_64

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 a network on top of it

Actual results:
MainProcess|jsonrpc/7::ERROR::2020-02-11 11:53:44,253::supervdsm_server::97::SuperVdsm.ServerCallback::(wrapper) Error in setupNetworks
Traceback (most recent call last):
  File "/usr/lib/python3.6/site-packages/vdsm/supervdsm_server.py", line 95, in wrapper
    res = func(*args, **kwargs)
  File "/usr/lib/python3.6/site-packages/vdsm/network/api.py", line 230, in setupNetworks
    validator.validate(networks, bondings, net_info)
  File "/usr/lib/python3.6/site-packages/vdsm/network/validator.py", line 31, in validate
    netswitch.configurator.validate(networks, bondings, net_info)
  File "/usr/lib/python3.6/site-packages/vdsm/network/netswitch/configurator.py", line 147, in validate
    validator.validate_network_setup(networks, bondings, net_info)
  File "/usr/lib/python3.6/site-packages/vdsm/network/netswitch/validator.py", line 114, in validate_network_setup
    RunningConfig().networks,
  File "/usr/lib/python3.6/site-packages/vdsm/network/netswitch/validator.py", line 156, in validate_net_configuration
    _validate_bond_exists(bond, desired_bonds, current_bonds)
  File "/usr/lib/python3.6/site-packages/vdsm/network/netswitch/validator.py", line 265, in _validate_bond_exists
    ne.ERR_BAD_BONDING, 'Bond %s does not exist' % bond
vdsm.network.errors.ConfigNetworkError: (25, 'Bond bond0 does not exist')


Expected results:
Should work

Additional info:
See also BZ 1801798 - same scenario explodes on nmstate side but with vlan network
BZ 1800592 - Origin bug reported for ifcfg scenario

Comment 1 Dominik Holler 2020-02-19 09:19:58 UTC
The validation of VDSM may explode because the bond does not exists because of issues in the underlying layers (nmstate, maybe even NetworkworkManager).
We will analyze this bug again if the lower layers might have addressed the related issues.

Comment 2 Michael Burman 2020-02-25 08:56:22 UTC
Should be retested with nmstate 0.2.6

Comment 3 Michael Burman 2020-02-27 08:46:53 UTC
Verified on -
nmstate-0.2.6-1.el8.noarch
vdsm-4.40.2-1.el8ev.x86_64
NetworkManager-1.22.8-1.el8.x86_64

Comment 4 Sandro Bonazzola 2020-05-20 20:03:11 UTC
This bugzilla is included in oVirt 4.4.0 release, published on May 20th 2020.

Since the problem described in this bug report should be
resolved in oVirt 4.4.0 release, it has been closed with a resolution of CURRENT RELEASE.

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