Bug 1947287 - [OVS] Moving network between bonds with different MTU fails
Summary: [OVS] Moving network between bonds with different MTU fails
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 8
Classification: Red Hat
Component: nmstate
Version: 8.4
Hardware: Unspecified
OS: Unspecified
unspecified
medium
Target Milestone: beta
: ---
Assignee: Fernando F. Mancera
QA Contact: Mingyu Shi
URL:
Whiteboard:
Depends On:
Blocks: 1961912
TreeView+ depends on / blocked
 
Reported: 2021-04-08 07:23 UTC by Ales Musil
Modified: 2021-11-09 20:21 UTC (History)
8 users (show)

Fixed In Version: nmstate-1.1.0-0.1.el8
Doc Type: No Doc Update
Doc Text:
Clone Of:
: 1961912 (view as bug list)
Environment:
Last Closed: 2021-11-09 17:43:40 UTC
Type: Bug
Target Upstream Version:


Attachments (Terms of Use)
Reproducer (2.83 KB, application/x-shellscript)
2021-04-08 07:23 UTC, Ales Musil
no flags Details
Simplified reproducer (1.15 KB, text/plain)
2021-05-05 12:48 UTC, Fernando F. Mancera
no flags Details


Links
System ID Private Priority Status Summary Last Updated
Github nmstate nmstate pull 1582 0 None closed nm.profile: activate modified ovs-port first 2021-05-18 12:05:18 UTC
Red Hat Product Errata RHBA-2021:4157 0 None None None 2021-11-09 17:44:01 UTC

Description Ales Musil 2021-04-08 07:23:31 UTC
Created attachment 1770162 [details]
Reproducer

Description of problem:
Moving ovs network from bondA to bondB and at the same time changing MTU of all components fails after a while. 

Version-Release number of selected component (if applicable):
nmstate-1.0.2-6.el8.noarch
nispor-1.0.1-4.el8.x86_64
NetworkManager-1.32.0-0.1.el8.x86_64


How reproducible:
100%

Steps to Reproduce:
1. Run reproducer script


Actual results:
2021-04-08 07:19:22,677 root         DEBUG    Async action: Waiting activation of dummy_bond0 dummy finished
Traceback (most recent call last):
  File "/usr/lib/python3.6/site-packages/libnmstate/nmstate.py", line 53, in plugin_context
    yield plugins
  File "/usr/lib/python3.6/site-packages/libnmstate/netapplier.py", line 78, in apply
    _apply_ifaces_state(plugins, net_state, verify_change, save_to_disk)
  File "/usr/lib/python3.6/site-packages/libnmstate/netapplier.py", line 116, in _apply_ifaces_state
    plugin.apply_changes(net_state, save_to_disk)
  File "/usr/lib/python3.6/site-packages/libnmstate/nm/plugin.py", line 204, in apply_changes
    NmProfiles(self.context).apply_config(net_state, save_to_disk)
  File "/usr/lib/python3.6/site-packages/libnmstate/nm/profiles.py", line 89, in apply_config
    self._ctx.wait_all_finish()
  File "/usr/lib/python3.6/site-packages/libnmstate/nm/context.py", line 213, in wait_all_finish
    raise tmp_error
libnmstate.error.NmstateLibnmError: Activate profile uuid:3a359cd0-d68a-4c7a-ae50-f97b47390142 iface:net type: ovs-interface failed: reason=<enum NM_ACTIVE_CONNECTION_STATE_REASON_DEVICE_DISCONNECTED of type NM.ActiveConnectionStateReason> <enum NM_DEVICE_STATE_REASON_DEPENDENCY_FAILED of type NM.DeviceStateReason>

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3.6/site-packages/libnmstate/nm/checkpoint.py", line 93, in _refresh_checkpoint_timeout
    self._dbuspath, self._timeout, cancellable, cb, cb_data
TypeError: Argument 1 does not allow None as a value
^CTraceback (most recent call last):
  File "/usr/lib/python3.6/site-packages/libnmstate/nmstate.py", line 53, in plugin_context
    yield plugins
  File "/usr/lib/python3.6/site-packages/libnmstate/netapplier.py", line 78, in apply
    _apply_ifaces_state(plugins, net_state, verify_change, save_to_disk)
  File "/usr/lib/python3.6/site-packages/libnmstate/netapplier.py", line 116, in _apply_ifaces_state
    plugin.apply_changes(net_state, save_to_disk)
  File "/usr/lib/python3.6/site-packages/libnmstate/nm/plugin.py", line 204, in apply_changes
    NmProfiles(self.context).apply_config(net_state, save_to_disk)
  File "/usr/lib/python3.6/site-packages/libnmstate/nm/profiles.py", line 89, in apply_config
    self._ctx.wait_all_finish()
  File "/usr/lib/python3.6/site-packages/libnmstate/nm/context.py", line 213, in wait_all_finish
    raise tmp_error
libnmstate.error.NmstateLibnmError: Activate profile uuid:3a359cd0-d68a-4c7a-ae50-f97b47390142 iface:net type: ovs-interface failed: reason=<enum NM_ACTIVE_CONNECTION_STATE_REASON_DEVICE_DISCONNECTED of type NM.ActiveConnectionStateReason> <enum NM_DEVICE_STATE_REASON_DEPENDENCY_FAILED of type NM.DeviceStateReason>


Expected results:
It should pass

Additional info:
The same flow was working without any issue on 0.3

Comment 1 Fernando F. Mancera 2021-05-05 12:47:02 UTC
Upstream PR: https://github.com/nmstate/nmstate/pull/1582

In addition, I've created a simplified reproducer. Please check it out, thanks!

Comment 2 Fernando F. Mancera 2021-05-05 12:48:12 UTC
Created attachment 1779798 [details]
Simplified reproducer

Comment 3 Fernando F. Mancera 2021-05-11 08:07:24 UTC
Patch merged!

Comment 4 Mingyu Shi 2021-05-12 02:47:40 UTC
Pretested with versions:
nmstate-1.1.0-0.20210511.1358git3463c8e.el8.noarch
nispor-1.0.1-4.el8.x86_64
NetworkManager-1.32.0-0.2.el8.x86_64
Linux mshi-rhel-850-20210328d2 4.18.0-301.1.el8.x86_64 #1 SMP Mon Mar 29 15:21:06 EDT 2021 x86_64 x86_64 x86_64 GNU/Linux

Run the reproducer successfully.

Comment 12 Mingyu Shi 2021-06-06 15:12:32 UTC
Verified with versions:
nmstate-1.1.0-0.1.el8.noarch
nispor-1.1.0-1.el8.x86_64
NetworkManager-1.32.0-0.4.el8.x86_64
openvswitch2.13-2.13.0-105.el8fdp.x86_64

Run the reproducer, PASS.

Comment 15 errata-xmlrpc 2021-11-09 17:43:40 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.