i40e interfaces renamed after upgrade from hwe-6.5

Bug #2077159 reported by Dr. Jens Harbott
14
This bug affects 1 person
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
New
Undecided
Unassigned
netplan.io (Ubuntu)
Invalid
Undecided
Unassigned
systemd (Ubuntu)
Incomplete
Undecided
Unassigned

Bug Description

Server running Ubuntu 22.04.4 LTS

Interface names with linux-image-6.5.0-21-generic 6.5.0-21.21~22.04.1:

3: eno1: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 9100 qdisc mq state DOWN mode DEFAULT group default qlen 1000
    altname enp102s0f0
4: eno5: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN mode DEFAULT group default qlen 1000
    altname enp183s0f0
6: eno2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq master mgmt state UP mode DEFAULT group default qlen 1000
    altname enp102s0f1
7: eno6: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq master mgmt state DOWN mode DEFAULT group default qlen 1000
    altname enp183s0f1
8: eno3: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    altname enp102s0f2
9: eno7: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    altname enp183s0f2
10: eno4: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    altname enp102s0f3
11: eno8: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN mode DEFAULT group default qlen 1000
    altname enp183s0f3

Interface names with linux-image-6.8.0-40-generic 6.8.0-40.40~22.04.3:

3: eno5np0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    altname enp183s0f0np0
4: eno1: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 9100 qdisc mq state DOWN mode DEFAULT group default qlen 1000
    altname enp102s0f0
5: enp101s0f1np1: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 9100 qdisc mq state DOWN mode DEFAULT group default qlen 1000
6: eno2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq master mgmt state UP mode DEFAULT group default qlen 1000
    altname enp102s0f1
7: eno6np1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    altname enp183s0f1np1
8: eno3: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    altname enp102s0f2
9: eno7np2: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    altname enp183s0f2np2
10: eno4: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    altname enp102s0f3
11: eno8np3: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    altname enp183s0f3np3

Expected result: Static network configuration via netplan keeps working after the upgrade.

Actual result: Static network configuration is no longer applied for the interface that changed their name.
---
ProblemType: Bug
AlsaDevices:
 total 0
 crw-rw---- 1 root audio 116, 1 Aug 16 09:40 seq
 crw-rw---- 1 root audio 116, 33 Aug 16 09:40 timer
AplayDevices: Error: [Errno 2] No such file or directory: 'aplay'
ApportVersion: 2.20.11-0ubuntu82.6
Architecture: amd64
ArecordDevices: Error: [Errno 2] No such file or directory: 'arecord'
AudioDevicesInUse: Error: command ['fuser', '-v', '/dev/snd/seq', '/dev/snd/timer'] failed with exit code 1:
CRDA: N/A
CasperMD5json:
 {
   "result": "skip"
 }
CloudArchitecture: x86_64
CloudID: none
CloudName: none
CloudPlatform: none
CloudSubPlatform: config
DistroRelease: Ubuntu 22.04
InstallationDate: Installed on 2023-12-04 (260 days ago)
InstallationMedia: Ubuntu-Server 22.04.2 LTS "Jammy Jellyfish" - Release amd64 (20230217.1)
IwConfig: Error: [Errno 2] No such file or directory: 'iwconfig'
MachineType: Supermicro SYS-5019D-FN8TP
Package: linux (not installed)
PciMultimedia:

ProcEnviron:
 TERM=screen
 PATH=(custom, no user)
 LANG=en_US.UTF-8
 SHELL=/bin/bash
ProcFB: 0 astdrmfb
ProcKernelCmdLine: BOOT_IMAGE=/vmlinuz-6.5.0-21-generic root=/dev/mapper/system-root ro
ProcVersionSignature: Ubuntu 6.5.0-21.21~22.04.1-generic 6.5.8
RebootRequiredPkgs: Error: path contained symlinks.
RelatedPackageVersions:
 linux-restricted-modules-6.5.0-21-generic N/A
 linux-backports-modules-6.5.0-21-generic N/A
 linux-firmware 20220329.git681281e4-0ubuntu3.31
RfKill: Error: [Errno 2] No such file or directory: 'rfkill'
Tags: jammy uec-images
Uname: Linux 6.5.0-21-generic x86_64
UpgradeStatus: No upgrade log present (probably fresh install)
UserGroups: N/A
_MarkForUpload: True
dmi.bios.date: 12/08/2022
dmi.bios.release: 5.14
dmi.bios.vendor: American Megatrends Inc.
dmi.bios.version: 1.9
dmi.board.asset.tag: To be filled by O.E.M.
dmi.board.name: X11SDV-8C-TP8F
dmi.board.vendor: Supermicro
dmi.board.version: 1.10
dmi.chassis.asset.tag: To be filled by O.E.M.
dmi.chassis.type: 1
dmi.chassis.vendor: Supermicro
dmi.chassis.version: 0123456789
dmi.modalias: dmi:bvnAmericanMegatrendsInc.:bvr1.9:bd12/08/2022:br5.14:svnSupermicro:pnSYS-5019D-FN8TP:pvr0123456789:rvnSupermicro:rnX11SDV-8C-TP8F:rvr1.10:cvnSupermicro:ct1:cvr0123456789:skuTobefilledbyO.E.M.:
dmi.product.family: To be filled by O.E.M.
dmi.product.name: SYS-5019D-FN8TP
dmi.product.sku: To be filled by O.E.M.
dmi.product.version: 0123456789
dmi.sys.vendor: Supermicro

summary: - i40e interfaces renamed after upgrade from hwe-6.8
+ i40e interfaces renamed after upgrade from hwe-6.5
Revision history for this message
Philip Cox (philcox) wrote :

Hello, thank you for taking the time to open this bug report.

Unfortunately there is not enough information to investigate this issue. Could you please run the command "apport-collect 2077159" to include the system information and logs so we can look in to this. Thank you.

Changed in linux-meta-hwe-6.8 (Ubuntu):
assignee: nobody → Philip Cox (philcox)
status: New → Incomplete
Revision history for this message
Dr. Jens Harbott (j-harbott) wrote :

This does not seem to work as expected:

user@rtr001:~$ sudo apport-collect 2077159
Please open this authorization page:
 (https://launchpad.net/+authorize-token?oauth_token=XXX&allow_permission=DESKTOP_INTEGRATION)
in your browser. Use your browser to authorize
this program to access Launchpad on your behalf.
Press Enter after authorizing in your browser.

Package linux-meta-hwe-6.8 not installed and no hook available, ignoring

*** Updating problem report

No additional information collected.

Press any key to continue...

No pending crash reports. Try --help for more information.

Changed in linux-meta-hwe-6.8 (Ubuntu):
status: Incomplete → New
Timo Aaltonen (tjaalton)
affects: linux-meta-hwe-6.8 (Ubuntu) → linux (Ubuntu)
Revision history for this message
Dr. Jens Harbott (j-harbott) wrote : CurrentDmesg.txt

apport information

tags: added: apport-collected jammy uec-images
description: updated
Revision history for this message
Dr. Jens Harbott (j-harbott) wrote : HookError_ubuntu.txt

apport information

Revision history for this message
Dr. Jens Harbott (j-harbott) wrote : Lspci.txt

apport information

Revision history for this message
Dr. Jens Harbott (j-harbott) wrote : Lspci-vt.txt

apport information

Revision history for this message
Dr. Jens Harbott (j-harbott) wrote : Lsusb.txt

apport information

Revision history for this message
Dr. Jens Harbott (j-harbott) wrote : Lsusb-t.txt

apport information

Revision history for this message
Dr. Jens Harbott (j-harbott) wrote : Lsusb-v.txt

apport information

Revision history for this message
Dr. Jens Harbott (j-harbott) wrote : ProcCpuinfo.txt

apport information

Revision history for this message
Dr. Jens Harbott (j-harbott) wrote : ProcCpuinfoMinimal.txt

apport information

Revision history for this message
Dr. Jens Harbott (j-harbott) wrote : ProcInterrupts.txt

apport information

Revision history for this message
Dr. Jens Harbott (j-harbott) wrote : ProcModules.txt

apport information

Revision history for this message
Dr. Jens Harbott (j-harbott) wrote : UdevDb.txt

apport information

Revision history for this message
Dr. Jens Harbott (j-harbott) wrote : WifiSyslog.txt

apport information

Philip Cox (philcox)
Changed in linux (Ubuntu):
assignee: Philip Cox (philcox) → Bethany Jamison (bjamison)
Changed in linux (Ubuntu):
assignee: Bethany Jamison (bjamison) → nobody
Revision history for this message
Bethany Jamison (bjamison) wrote :

It seems like this isn't a kernel issue but a netplan one.

affects: linux (Ubuntu) → netplan.io (Ubuntu)
Revision history for this message
Lukas Märdian (slyon) wrote :

May I ask you to please share your Netplan configuration. Especially the relevant bits around the "match" setting used to select your interface? E.g. output from "netplan get".

Revision history for this message
Dr. Jens Harbott (j-harbott) wrote :

There isn't any "match" settings, we just configure the interfaces by name, like:

network:
  version: 2
  ethernets:
    eno5:
      addresses:
      - "10.11.12.1/25"

This fails when the interface is then named eno5np0 after booting with the 6.8.x kernel. fwiw I'm not convinced that this is an issue with netplan, I think the same would happen with any other configuration method like systemd .network files? Unless of course one argues that one should tie things to e.g. mac addresses, but then a config change would be needed after a possible hardware failure and swap, which IMO cannot be the proper solution either - after all that's what persistent interface names were made for, weren't they?

Lukas Märdian (slyon)
tags: added: rls-jj-incoming
Dan Bungert (dbungert)
tags: added: foundations-todo
removed: rls-jj-incoming
Revision history for this message
Nick Rosbrook (enr0n) wrote :

By default, the NamePolicy=[1] (as configured in /usr/lib/systemd/network/99-default.link) is:

[Link]
NamePolicy=keep kernel database onboard slot path

This means that if the kernel claims to assign a predictable name, then that will take precedence over other policies, including the "onboard" policy, which appears to be the one you are expecting. So, maybe the previous kernel was just issuing ethX, which is not predictable, and "onboard" was the winning rename policy.

It's also possible that something else is renaming the interface first, which means that the "keep" policy would take effect.

Now, I think if you want to continue relying on the "onboard" policy, you should use a drop-in to give that policy higher priority. E.g.:

$ mkdir -p /etc/systemd/network/99-default.link.d
$ cat > /etc/systemd/network/99-default.link.d/name-policy.conf
[Link]
NamePolicy=onboard keep kernel database slot path

I think that should fix your problem.

[1] https://www.freedesktop.org/software/systemd/man/latest/systemd.link.html#NamePolicy=

Changed in systemd (Ubuntu):
status: New → Incomplete
Revision history for this message
Nick Rosbrook (enr0n) wrote :

Re-adding a Linux task to see if anyone can confirm whether kernel interface naming was changed between these two kernel versions.

Lukas Märdian (slyon)
Changed in netplan.io (Ubuntu):
status: New → Invalid
Revision history for this message
Nick Rosbrook (enr0n) wrote :

I believe this is a duplicate of bug 2085835.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.