RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.
Bug 1807171 - reset ethtool autonet/speed/duplex setting when deactivating profile in NetworkManager
Summary: reset ethtool autonet/speed/duplex setting when deactivating profile in Netwo...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 8
Classification: Red Hat
Component: NetworkManager
Version: 8.2
Hardware: Unspecified
OS: Unspecified
medium
medium
Target Milestone: rc
: 8.0
Assignee: Thomas Haller
QA Contact: Desktop QE
URL:
Whiteboard:
Depends On:
Blocks: 1807630
TreeView+ depends on / blocked
 
Reported: 2020-02-25 17:54 UTC by Thomas Haller
Modified: 2020-11-04 01:49 UTC (History)
10 users (show)

Fixed In Version: NetworkManager-1.25.2-1.el8
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2020-11-04 01:49:00 UTC
Type: Bug
Target Upstream Version:
Embargoed:
pm-rhel: mirror+


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2020:4499 0 None None None 2020-11-04 01:49:28 UTC

Description Thomas Haller 2020-02-25 17:54:23 UTC
In a NetworkManager profile, you can set the ethernet.{auto-negotiate,duplex,speed} settings.

If you leave them all unset (the default), NetworkManager won't touch the settings of the device when activating the profile. Otherwise, it will set them.


When deactivating the profile, NetworkManager currently does not restore the previous settings. It must.


That is especially a problem, because if your interface has the wrong speed settings, then it won't get carrier. And you won't be able to activate a profile on a device that has no carrier (at least not if the profile uses DHCP or other IP addressing methods that require carrier).


Example:

 - have a profile that sets speed settings (e.g. by disabling autoneg)
 - activate profile.
 - unplug cable (connection goes down, the ethtool settings are left at the previous speed settings)
 - plug cable into another port, where the other side does not support the set ethtool settings.

The result is that the link won't get carrier, and you won't be able to activate the profile to set different speed settings.



TODO:

1) during disconnect, by default the previous settings (if NM changed them) must be restored. Usually, that means to restore autoneg because that's the default.

2) we should have a per-device configuration, that instead tells NetworkManager to always restore an explicit other setting (and not the one that was found before activating the profile).



Upstream bug: https://gitlab.freedesktop.org/NetworkManager/NetworkManager/issues/356#note_407786

Comment 1 Thomas Haller 2020-02-25 17:58:15 UTC
3) possibly there should be a D-Bus API to set the ethtool settings of a device. Because even with 1) and 2), you still can get into a situation where you just won't be able to activate a profile.

the problem is, how would anybody know how to use this API. E.g. if a user (or worse: some application) runs into this issue, how could it possibly know that changing the ethtool settings is the right way to fix it?

Comment 9 errata-xmlrpc 2020-11-04 01:49:00 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 (NetworkManager 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-2020:4499


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