[Ubuntu 18.04][I2S][ethtool] -k options says 'Cannot get device udp-fragmentation-offload settings: Operation not supported'
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
The Ubuntu-power-systems project |
Fix Released
|
High
|
Canonical Server | ||
ethtool (Ubuntu) |
Fix Released
|
Undecided
|
Ubuntu on IBM Power Systems Bug Triage |
Bug Description
---Problem Description---
ethtool -K enp1s0f0 gro on
Cannot get device udp-fragmentati
Cannot get device udp-fragmentati
---uname output---
Linux ltciofvtr-bostonlc1 4.15.0-10-generic #11-Ubuntu SMP Tue Feb 13 18:21:52 UTC 2018 ppc64le ppc64le ppc64le GNU/Linux
Machine Type = Power 9 Boston LC TBA P9DSU
---Steps to Reproduce---
Configure the interfaces of the of i2S adapter.
Invoke ethtool with -K option for the interface
It fails with below message
# ethtool -K enp1s0f0 gro on
Cannot get device udp-fragmentati
Cannot get device udp-fragmentati
# ethtool -K enp1s0f0 gro off
Cannot get device udp-fragmentati
Cannot get device udp-fragmentati
# ethtool -k enp1s0f0
Features for enp1s0f0:
Cannot get device udp-fragmentati
rx-checksumming: on
tx-checksumming: on
tx-checksum-ipv4: off [fixed]
tx-checksum-
tx-checksum-ipv6: off [fixed]
tx-checksum-
tx-checksum-sctp: on
scatter-gather: on
tx-scatter-gather: on
tx-scatter-
tcp-segmentatio
tx-tcp-
tx-tcp-
tx-tcp-
tx-tcp6-
udp-fragmentati
generic-
generic-
large-receive-
rx-vlan-offload: on
tx-vlan-offload: on
ntuple-filters: off
receive-hashing: on
highdma: on [fixed]
rx-vlan-filter: on
vlan-challenged: off [fixed]
tx-lockless: off [fixed]
netns-local: off [fixed]
tx-gso-robust: off [fixed]
tx-fcoe-
tx-gre-
tx-gre-
tx-ipxip4-
tx-ipxip6-
tx-udp_
tx-udp_
tx-gso-partial: on
tx-sctp-
tx-esp-
fcoe-mtu: off [fixed]
tx-nocache-copy: off
loopback: off [fixed]
rx-fcs: off [fixed]
rx-all: off
tx-vlan-
rx-vlan-
rx-vlan-
l2-fwd-offload: off
hw-tc-offload: off
esp-hw-offload: off [fixed]
esp-tx-
rx-udp_
Contact Information = <email address hidden>
Userspace tool common name: ethtool
The userspace tool has the following bit modes: 64 bit
-------
I am not sure but, I found this related patch which says that it is removed. Kindly look and assist further.
https:/
Found a link which says:
[ethtool] ethtool: Remove UDP Fragmentation Offload use from ethtool
>>But, as the feature has very few device support, and is not that useful,
>>we thought it would be best to just totally remove it from ethtool.
>>We can re-work this so the feature would still be available on old kernels.
tags: | added: architecture-ppc64le bugnameltc-164862 severity-high targetmilestone-inin--- |
Changed in ubuntu: | |
assignee: | nobody → Ubuntu on IBM Power Systems Bug Triage (ubuntu-power-triage) |
affects: | ubuntu → ethtool (Ubuntu) |
Changed in ubuntu-power-systems: | |
importance: | Undecided → High |
Changed in ubuntu-power-systems: | |
assignee: | nobody → Ubuntu Server Team (ubuntu-server) |
tags: | added: triage-g |
Changed in ubuntu-power-systems: | |
assignee: | Ubuntu Server Team (ubuntu-server) → Canonical Server Team (canonical-server) |
Changed in ethtool (Ubuntu): | |
status: | New → Triaged |
Changed in ubuntu-power-systems: | |
status: | New → In Progress |
Changed in ubuntu-power-systems: | |
status: | In Progress → Fix Released |
tags: |
added: targetmilestone-inin1804 removed: targetmilestone-inin--- |
Hi,
this is interesting.
Thanks for the ping.
Note: this needs no PPC or any other special arch, a VM guest is enough to test it.
Up until very recently we were still on kernel 4.13 where this did not occur.
With 4.13 - starting both off: ion-offload| generic- receive- offload' tion-offload: off receive- offload: off ion-offload| generic- receive- offload' tion-offload: off receive- offload: on ion-offload| generic- receive- offload' tion-offload: on receive- offload: on
$ sudo ethtool -k ens3 | egrep 'udp-fragmentat
udp-fragmenta
generic-
$ sudo ethtool -K ens3 gro on
$ sudo ethtool -k ens3 | egrep 'udp-fragmentat
udp-fragmenta
generic-
$ sudo ethtool -K ens3 ufo on
$ sudo ethtool -k ens3 | egrep 'udp-fragmentat
udp-fragmenta
generic-
So all was just fine.
ethtool release is rather tied to kernel version releases for just this reason. /patchwork. ozlabs. org/patch/ 806563/ is missing still.
But there was no update (yet) and we are on 4.11 for now.
Due to that the https:/
It is important that this is ONLY a warning and things work just fine.
Obviously setting UFO will fail, but setting GRO works (aside the annoying error messages).
So GRO is not functionally affected, it is just the older ethtool that tries to probe the related UFO and fails on that.
This is also the reason that upstream ONLY disabled the warning (but kept all else).
Therefore on 4.15 it behaves like this: ion-offload| generic- receive- offload' on-offload settings: Operation not supported tion-offload: off receive- offload: off on-offload settings: Operation not supported on-offload settings: Operation not supported ion-offload| generic- receive- offload' on-offload settings: Operation not supported tion-offload: off receive- offload: on
$ sudo ethtool -k ens3 | egrep 'udp-fragmentat
Cannot get device udp-fragmentati
udp-fragmenta
generic-
$ sudo ethtool -K ens3 gro on
Cannot get device udp-fragmentati
Cannot get device udp-fragmentati
$ echo $?
0
$ sudo ethtool -k ens3 | egrep 'udp-fragmentat
Cannot get device udp-fragmentati
udp-fragmenta
generic-
So other than the warning it worked.
UFO doesn't of course.
$ sudo ethtool -K ens3 ufo on on-offload settings: Operation not supported on-offload on-offload settings: Operation not supported ion-offload| generic- receive- offload' on-offload settings: Operation not supported tion-offload: off receive- offload: on
Cannot get device udp-fragmentati
Cannot change udp-fragmentati
Cannot get device udp-fragmentati
Could not change any device features
$ echo $?
1
$ sudo ethtool -k ens3 | egrep 'udp-fragmentat
Cannot get device udp-fragmentati
udp-fragmenta
generic-
That said we have two options now:
1. we can pick the change from upstream and be good in regard to this bug.
This can also be done post Feature Freeze as it is a bug fix.
2. We actually should - as we did with iproute2 recently - tie ethtool versions to kernel
uploads. It is so dependent on the actual kernel, and might even more special for kernel
backports, hwe kernels and so on.
For example this will trigger on Xenial with a 4.15 HWE as well at some point.
I'll try to look into the doability of an ethtool 4.15 right now, but would like to ask the kernel ...