In the Linux kernel, the following vulnerability has been resolved:
net/mlx5e: Fix crash on profile change rollback failure
mlx5e_netdev_change_profile can fail to attach a new profile and can fail to rollback to old profile, in such case, we could end up with a dangling netdev with a fully reset netdev_priv. A retry to change profile, e.g. another attempt to call mlx5e_netdev_change_profile via switchdev mode change, will crash trying to access the now NULL priv->mdev.
This fix allows mlx5e_netdev_change_profile() to handle previous failures and an empty priv, by not assuming priv is valid.
Pass netdev and mdev to all flows requiring mlx5e_netdev_change_profile() and avoid passing priv. In mlx5e_netdev_change_profile() check if current priv is valid, and if not, just attach the new profile without trying to access the old one.
This fixes the following oops, when enabling switchdev mode for the 2nd time after first time failure:
## Enabling switchdev mode first time:
mlx5_core 0012:03:00.1: E-Switch: Supported tc chains and prios offload workqueue: Failed to create a rescuer kthread for wq "mlx5e": -EINTR mlx5_core 0012:03:00.1: mlx5e_netdev_init_profile:6214:(pid 37199): mlx5e_priv_init failed, err=-12 mlx5_core 0012:03:00.1 gpu3rdma1: mlx5e_netdev_change_profile: new profile init failed, -12 workqueue: Failed to create a rescuer kthread for wq "mlx5e": -EINTR mlx5_core 0012:03:00.1: mlx5e_netdev_init_profile:6214:(pid 37199): mlx5e_priv_init failed, err=-12 mlx5_core 0012:03:00.1 gpu3rdma1: mlx5e_netdev_change_profile: failed to rollback to orig profile, -12 ^^^^^^^^ mlx5_core 0000:00:03.0: E-Switch: Disable: mode(LEGACY), nvfs(0), necvfs(0), active vports(0)
## retry: Enabling switchdev mode 2nd time:
mlx5_core 0000:00:03.0: E-Switch: Supported tc chains and prios offload BUG: kernel NULL pointer dereference, address: 0000000000000038 #PF: supervisor read access in kernel mode #PF: error_code(0x0000) - not-present page PGD 0 P4D 0 Oops: Oops: 0000 [#1] SMP NOPTI CPU: 13 UID: 0 PID: 520 Comm: devlink Not tainted 6.18.0-rc4+ #91 PREEMPT(voluntary) Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-2.fc40 04/01/2014 RIP: 0010:mlx5e_detach_netdev+0x3c/0x90 Code: 50 00 00 f0 80 4f 78 02 48 8b bf e8 07 00 00 48 85 ff 74 16 48 8b 73 78 48 d1 ee 83 e6 01 83 f6 01 40 0f b6 f6 e8 c4 42 00 00 <48> 8b 45 38 48 85 c0 74 08 48 89 df e8 cc 47 40 1e 48 8b bb f0 07 RSP: 0018:ffffc90000673890 EFLAGS: 00010246 RAX: 0000000000000000 RBX: ffff8881036a89c0 RCX: 0000000000000000 RDX: ffff888113f63800 RSI: ffffffff822fe720 RDI: 0000000000000000 RBP: 0000000000000000 R08: 0000000000002dcd R09: 0000000000000000 R10: ffffc900006738e8 R11: 00000000ffffffff R12: 0000000000000000 R13: 0000000000000000 R14: ffff8881036a89c0 R15: 0000000000000000 FS: 00007fdfb8384740(0000) GS:ffff88856a9d6000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 0000000000000038 CR3: 0000000112ae0005 CR4: 0000000000370ef0 Call Trace: <TASK> mlx5e_netdev_change_profile+0x45/0xb0 mlx5e_vport_rep_load+0x27b/0x2d0 mlx5_esw_offloads_rep_load+0x72/0xf0 esw_offloads_enable+0x5d0/0x970 mlx5_eswitch_enable_locked+0x349/0x430 ? is_mp_supported+0x57/0xb0 mlx5_devlink_eswitch_mode_set+0x26b/0x430 devlink_nl_eswitch_set_doit+0x6f/0xf0 genl_family_rcv_msg_doit+0xe8/0x140 genl_rcv_msg+0x18b/0x290 ? __pfx_devlink_nl_pre_doit+0x10/0x10 ? __pfx_devlink_nl_eswitch_set_doit+0x10/0x10 ? __pfx_devlink_nl_post_doit+0x10/0x10 ? __pfx_genl_rcv_msg+0x10/0x10 netlink_rcv_skb+0x52/0x100 genl_rcv+0x28/0x40 netlink_unicast+0x282/0x3e0 ? __alloc_skb+0xd6/0x190 netlink_sendmsg+0x1f7/0x430 __sys_sendto+0x213/0x220 ? __sys_recvmsg+0x6a/0xd0 __x64_sys_sendto+0x24/0x30 do_syscall_64+0x50/0x1f0 entry_SYSCALL_64_after_hwframe+0x76/0x7e RIP: 0033:0x7fdfb8495047
CVSS Details
- CVSS 3.1 Base Score: 5.5
- CVSS 3.1 Vector: (CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Amazon_linux_2023 | — | Upgrade kernel6.12-libbpf-debuginfoUpgrade kernel6.12-libbpf-staticUpgrade kernel6.12-libbpf-develUpgrade perf6.12Upgrade kernel6.12-tools-debuginfoUpgrade bpftool6.12-debuginfoUpgrade kernel6.12-headersUpgrade bpftool6.12Upgrade kernel6.12-modules-extraUpgrade kernel6.12Upgrade perf6.12-debuginfoUpgrade python3-perf6.12Upgrade kernel6.12-modules-extra-commonUpgrade kernel6.12-debuginfo-common-aarch64Upgrade kernel6.12-debuginfoUpgrade kernel-livepatch-6.12.68-92.122Upgrade kernel6.12-develUpgrade kernel6.12-libbpfUpgrade kernel6.12-toolsUpgrade kernel6.12-tools-develUpgrade kernel6.12-debuginfo-common-x86_64Upgrade python3-perf6.12-debuginfo | Mar 9, 2026 | Jan 25, 2026 |
| Debian | — | Upgrade linux | Jul 23, 2026 | Jul 23, 2026 |
| Oracle_linux | — | Upgrade kernel-uek | Mar 12, 2026 | Jan 25, 2026 |
| Redhat_linux | — | No solution exists | Jul 17, 2026 | Jan 25, 2026 |
| Suse | — | Upgrade dtb-freescaleUpgrade kernel-default-develUpgrade ocfs2-kmp-64kbUpgrade dtb-broadcomUpgrade kernel-macrosUpgrade kernel-rt-optionalUpgrade kernel-64kb-optionalUpgrade ocfs2-kmp-rtUpgrade kernel-64kbUpgrade kernel-kvmsmall-develUpgrade kernel-source-azureUpgrade dtb-hisiliconUpgrade kernel-azure-vdsoUpgrade cluster-md-kmp-defaultUpgrade gfs2-kmp-64kbUpgrade dtb-amazonUpgrade dlm-kmp-rtUpgrade dtb-appleUpgrade dtb-lgUpgrade dtb-renesasUpgrade kselftests-kmp-azureUpgrade dtb-amlogicUpgrade kernel-default-extraUpgrade kernel-64kb-extraUpgrade kernel-source-vanillaUpgrade kernel-zfcpdumpUpgrade kernel-azure-extraUpgrade kernel-obs-qaUpgrade dtb-marvellUpgrade kernel-azureUpgrade kernel-default-baseUpgrade kernel-docsUpgrade kselftests-kmp-rtUpgrade kernel-symsUpgrade kselftests-kmp-defaultUpgrade reiserfs-kmp-defaultUpgrade kernel-rt-vdsoUpgrade dlm-kmp-defaultUpgrade dlm-kmp-azureUpgrade dtb-amdUpgrade dtb-socionextUpgrade kernel-docs-htmlUpgrade kernel-default-livepatchUpgrade kernel-kvmsmall-vdsoUpgrade cluster-md-kmp-azureUpgrade kernel-sourceUpgrade kernel-develUpgrade dtb-allwinnerUpgrade kernel-azure-optionalUpgrade kernel-rtUpgrade kernel-default-optionalUpgrade dtb-apmUpgrade gfs2-kmp-azureUpgrade dtb-qcomUpgrade dtb-alteraUpgrade cluster-md-kmp-64kbUpgrade kernel-obs-buildUpgrade kernel-devel-azureUpgrade dtb-xilinxUpgrade dtb-exynosUpgrade kselftests-kmp-64kbUpgrade kernel-defaultUpgrade dtb-rockchipUpgrade cluster-md-kmp-rtUpgrade kernel-rt-develUpgrade ocfs2-kmp-defaultUpgrade ocfs2-kmp-azureUpgrade kernel-kvmsmallUpgrade gfs2-kmp-defaultUpgrade dtb-armUpgrade kernel-rt-extraUpgrade kernel-azure-develUpgrade gfs2-kmp-rtUpgrade dlm-kmp-64kbUpgrade dtb-sprdUpgrade kernel-64kb-develUpgrade dtb-caviumUpgrade kernel-syms-azureUpgrade kernel-default-vdsoUpgrade dtb-nvidiaUpgrade dtb-mediatek | Feb 12, 2026 | Feb 12, 2026 |
| Ubuntu | — | Upgrade linux-image-lowlatency-6.8Upgrade linux-image-oracle-6.17Upgrade linux-image-6.8.0-1055-aws-fipsUpgrade linux-image-6.8.0-1032-xilinxUpgrade linux-image-6.8.0-1055-aws-64kUpgrade linux-image-gcp-64k-lts-24.04Upgrade linux-image-generic-lpaeUpgrade linux-image-gcp-64k-6.17Upgrade linux-image-ibm-lts-24.04Upgrade linux-image-6.17.0-1019-oracleUpgrade linux-image-6.8.0-1054-nvidiaUpgrade linux-image-6.8.0-117-generic-64kUpgrade linux-image-6.8.1-1051-realtimeUpgrade linux-image-fipsUpgrade linux-image-nvidia-64k-6.8Upgrade linux-image-azure-fdeUpgrade linux-image-nvidia-lowlatencyUpgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-gcp-6.17Upgrade linux-image-6.17.0-1021-gcpUpgrade linux-image-6.8.0-116-fipsUpgrade linux-image-azureUpgrade linux-image-aws-fips-6.8Upgrade linux-image-aws-6.8Upgrade linux-image-gke-64kUpgrade linux-image-ibmUpgrade linux-image-oem-6.17Upgrade linux-image-azure-fipsUpgrade linux-image-nvidia-6.17Upgrade linux-image-azure-fde-6.17Upgrade linux-image-6.8.0-1055-ibmUpgrade linux-image-raspiUpgrade linux-image-6.8.0-1058-gcpUpgrade linux-image-6.8.0-117-lowlatencyUpgrade linux-image-6.8.0-1058-gcp-fipsUpgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-nvidia-tegra-rt-6.8Upgrade linux-image-raspi-6.8Upgrade linux-image-virtual-6.8Upgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-aws-fipsUpgrade linux-image-nvidia-64k-6.17Upgrade linux-image-oem-24.04bUpgrade linux-image-kvmUpgrade linux-image-6.17.0-1021-gcp-64kUpgrade linux-image-oracleUpgrade linux-image-realtime-6.8.1Upgrade linux-image-ibm-classicUpgrade linux-image-aws-64k-lts-24.04Upgrade linux-image-gcp-fipsUpgrade linux-image-nvidia-tegra-6.8Upgrade linux-image-oracle-64k-6.17Upgrade linux-image-generic-64k-6.8Upgrade linux-image-azure-lts-24.04Upgrade linux-image-nvidia-tegra-rtUpgrade linux-image-nvidia-6.8Upgrade linux-image-xilinx-6.8Upgrade linux-image-6.17.0-1031-nvidia-64kUpgrade linux-image-6.8.0-1041-gkeopUpgrade linux-image-6.8.0-1058-gcp-64kUpgrade linux-image-gcp-64kUpgrade linux-image-6.8.0-117-genericUpgrade linux-image-gcp-6.8Upgrade linux-image-6.8.0-1059-azureUpgrade linux-image-6.17.0-1030-oemUpgrade linux-image-6.8.0-1054-nvidia-lowlatency-64kUpgrade linux-image-gcp-fips-6.8Upgrade linux-image-6.8.0-1054-nvidia-lowlatencyUpgrade linux-image-6.8.0-1056-azureUpgrade linux-image-gcp-lts-24.04Upgrade linux-image-aws-lts-24.04Upgrade linux-image-6.8.0-1056-raspiUpgrade linux-image-6.8.0-1054-nvidia-64kUpgrade linux-image-realtimeUpgrade linux-image-oem-24.04Upgrade linux-image-gke-64k-6.8Upgrade linux-image-lowlatency-64k-6.8Upgrade linux-image-lowlatencyUpgrade linux-image-azure-fips-6.8Upgrade linux-image-realtime-6.17Upgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-nvidia-64kUpgrade linux-image-lowlatency-64kUpgrade linux-image-intel-iot-realtimeUpgrade linux-image-generic-64kUpgrade linux-image-6.8.0-1054-gkeUpgrade linux-image-gkeopUpgrade linux-image-6.8.0-1059-azure-fipsUpgrade linux-image-6.8.0-1054-gke-64kUpgrade linux-image-raspi-realtime-6.8Upgrade linux-image-oem-24.04dUpgrade linux-image-oem-24.04aUpgrade linux-image-6.17.0-1018-azure-fdeUpgrade linux-image-nvidia-lowlatency-6.8Upgrade linux-image-realtime-hwe-24.04Upgrade linux-image-realtime-hwe-22.04Upgrade linux-image-ibm-6.8Upgrade linux-image-azure-6.17Upgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-6.8.0-117-lowlatency-64kUpgrade linux-image-nvidia-tegraUpgrade linux-image-generic-6.8Upgrade linux-image-6.8.0-1055-awsUpgrade linux-image-6.8.0-1024-nvidia-tegra-rtUpgrade linux-image-6.17.0-1031-nvidiaUpgrade linux-image-6.17.0-1021-azureUpgrade linux-image-6.17.0-1019-oracle-64kUpgrade linux-image-raspi-realtimeUpgrade linux-image-genericUpgrade linux-image-xilinx-zynqmpUpgrade linux-image-intel-iotgUpgrade linux-image-gke-6.8Upgrade linux-image-gkeUpgrade linux-image-azure-6.8Upgrade linux-image-6.17.0-1018-realtimeUpgrade linux-image-nvidiaUpgrade linux-image-oracle-64kUpgrade linux-image-gcp-64k-6.8Upgrade linux-image-fips-6.8Upgrade linux-image-6.8.0-1024-nvidia-tegraUpgrade linux-image-nvidia-64k-hwe-24.04Upgrade linux-image-virtualUpgrade linux-image-aws-64k-6.8Upgrade linux-image-gkeop-6.8Upgrade linux-image-xilinxUpgrade linux-image-oem-24.04cUpgrade linux-image-nvidia-lowlatency-64k-6.8Upgrade linux-image-nvidia-hwe-24.04Upgrade linux-image-gcpUpgrade linux-image-6.8.0-2045-raspi-realtime | May 25, 2026 | May 19, 2026 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Sep 15, 2026 | Jan 25, 2026 |
Prioritise with Active Threat Intelligence
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub