After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 732703 - bond connection matching failures
bond connection matching failures
Status: RESOLVED FIXED
Product: NetworkManager
Classification: Platform
Component: IP and DNS config
unspecified
Other Linux
: Normal normal
: ---
Assigned To: NetworkManager maintainer(s)
NetworkManager maintainer(s)
Depends on:
Blocks:
 
 
Reported: 2014-07-03 18:08 UTC by Dan Williams
Modified: 2018-01-23 15:21 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Dan Williams 2014-07-03 18:08:28 UTC
NetworkManager[21107]: <info> (bond0): exported as /org/freedesktop/NetworkManager/Devices/6
connection
	id : "bond0" (s)
	uuid : "c6022030-cc6c-4747-b485-96fcacb9cfc9" (s)
	interface-name : "bond0" (s)
	type : "bond" (s)
	permissions :  (sd)
	autoconnect : FALSE (s)
	timestamp : 1404408352 (s)
	read-only : FALSE (sd)
	zone : NULL (sd)
	master : NULL (sd)
	slave-type : NULL (sd)
	secondaries :  (sd)
	gateway-ping-timeout : 0 (sd)


ipv6
	method : "link-local" (s)
	dhcp-hostname : NULL (sd)
	dns :  (s)
	dns-search :  (sd)
	addresses :  (s)
	routes :  (s)
	ignore-auto-routes : FALSE (sd)
	ignore-auto-dns : FALSE (sd)
	never-default : FALSE (sd)
	may-fail : TRUE (sd)
	ip6-privacy : -1 (sd)


ipv4
	method : "auto" (s)
	dns : 192.168.0.2 (s)
	dns-search :  (sd)
	addresses :  (s)
	address-labels :  (sd)
	routes :  (s)
	ignore-auto-routes : FALSE (sd)
	ignore-auto-dns : FALSE (sd)
	dhcp-client-id : NULL (sd)
	dhcp-send-hostname : TRUE (sd)
	dhcp-hostname : NULL (sd)
	never-default : FALSE (sd)
	may-fail : TRUE (sd)


bond
	interface-name : "bond0" (s)
	options : mode=balance-rr,miimon=1 (s)


NetworkManager[21107]: <info> Connection 'bond0' differs from candidate 'Bond connection 1' in bond.options, 802-3-ethernet.s390-options, 802-3-ethernet.cloned-mac-address, 802-3-ethernet.s390-subchannels, 802-3-ethernet.s390-nettype

[dcbw@blah NetworkManager (nm-0-9-10*)]$ nmcli con show "Bond connection 1"
connection.id:                          Bond connection 1
connection.uuid:                        7b651fc5-7c7d-4217-a91b-138bbaf017fe
connection.interface-name:              bond0
connection.type:                        bond
connection.autoconnect:                 no
connection.timestamp:                   1404408346
...
802-3-ethernet.mac-address:             --
802-3-ethernet.cloned-mac-address:      --
802-3-ethernet.mtu:                     auto
802-3-ethernet.s390-subchannels:        
802-3-ethernet.s390-nettype:            --
802-3-ethernet.s390-options:            
bond.interface-name:                    bond0
bond.options:                           miimon=1,updelay=0,downdelay=0,mode=balance-rr


Two problems:

1) The candidate has an 802-3-ethernet connection, but the generated connection does not.  If the candidate NMSettingWired is all defaults, then the candidate can match the generated connection.

2) bond.options doesn't match; the generated connection has updelay and downdelay options that were read from sysfs, but the candidate connection doesn't have those options because they are the default values.  If either connection has default bond options we should just ignore those when matching.
Comment 1 Dan Williams 2014-07-03 18:12:23 UTC
For #2, perhaps we need to implement a "compare_property" hook for NMSettingBond that handles "options" and ignores default bond option values.