Network test needs to focus on advertized speeds, not supported speeds
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Checkbox Provider - Base |
Expired
|
Medium
|
Unassigned |
Bug Description
As we've learned, chipsets can be rate limitied and while a chipset may support one speed, it's max advertized may be lower. For example:
Settings for enP8p1s0:
Supported ports: [ FIBRE ]
Supported link modes: 1000baseKX/Full
Supported pause frame use: Symmetric Receive-only
Supports auto-negotiation: Yes
Supported FEC modes: Not reported
Advertised link modes: 1000baseKX/Full
Advertised pause frame use: Symmetric
Advertised auto-negotiation: Yes
Advertised FEC modes: Not reported
Speed: 40000Mb/s
Duplex: Full
Port: Direct Attach Copper
PHYAD: 0
Transceiver: internal
Auto-negotiation: off
Supports Wake-on: d
Wake-on: d
Current message level: 0x00000014 (20)
link ifdown
Link detected: yes
Currently the Network script will fail if the detected network speed is lower than the max. The intention was to verify network speed against the advertised max, but it seems to be checking against the supported max instead. For example, this controller failed:
ERROR:root:Detected link speed (40000) is lower than detected max speed (56000)
ERROR:root:Check your device configuration and try again.
ERROR:root:If you want to override and test despite this under-speed link, use
ERROR:root:the --underspeed-ok option.
It advertises 40Gb max, and is connected on a 40Gb link, yet failed because the chipset supported max says 56Gb.
SO, we need to fix this to do two things:
1: It needs to compare the link speed to the advertized max speed, NOT the supported max speed.
2: We need to know when advertised and supported are different, so it should drop a warning if the advertised max is different than the supported max (higher OR lower).
Changed in plainbox-provider-checkbox: | |
importance: | Undecided → Medium |
Bug was migrated to GitHub: https:/ /github. com/canonical/ checkbox/ issues/ 108.
Bug is no more monitored here.