CVE-2026-43012: net/mlx5: Fix switchdev mode rollback in case of failure

Published May 1, 2026
·
Updated

In the Linux kernel, the following vulnerability has been resolved:

net/mlx5: Fix switchdev mode rollback in case of failure

If for some internal reason switchdev mode fails, we rollback to legacy mode, before this patch, rollback will unregister the uplink netdev and leave it unregistered causing the below kernel bug.

To fix this, we need to avoid netdev unregister by setting the proper rollback flag 'MLX5PRIVFLAGSSWITCHLEGACY' to indicate legacy mode.

devlink (431) used greatest stack depth: 11048 bytes left mlx5core 0000:00:03.0: E-Switch: Disable: mode(LEGACY), nvfs(0), \ necvfs(0), active vports(0) mlx5core 0000:00:03.0: E-Switch: Supported tc chains and prios offload mlx5core 0000:00:03.0: Loading uplink representor for vport 65535 mlx5core 0000:00:03.0: mlx5cmdouterr:816:(pid 456): \ QUERYHCACAP(0x100) opmod(0x0) failed, \ status bad parameter(0x3), syndrome (0x3a3846), err(-22) mlx5core 0000:00:03.0 enp0s3np0 (unregistered): Unloading uplink \ representor for vport 65535 ------------[ cut here ]------------ kernel BUG at net/core/dev.c:12070! Oops: invalid opcode: 0000 [#1] SMP NOPTI CPU: 2 UID: 0 PID: 456 Comm: devlink Not tainted 6.16.0-rc3+ \ #9 PREEMPT(voluntary) RIP: 0010:unregisternetdevicemanynotify+0x123/0xae0 ... Call Trace: [ 90.923094] unregisternetdevicequeue+0xad/0xf0 [ 90.923323] unregisternetdev+0x1c/0x40 [ 90.923522] mlx5evportrepunload+0x61/0xc6 [ 90.923736] eswoffloadsenable+0x8e6/0x920 [ 90.923947] mlx5eswitchenablelocked+0x349/0x430 [ 90.924182] ? ismpsupported+0x57/0xb0 [ 90.924376] mlx5devlinkeswitchmodeset+0x167/0x350 [ 90.924628] devlinknleswitchsetdoit+0x6f/0xf0 [ 90.924862] genlfamilyrcvmsgdoit+0xe8/0x140 [ 90.925088] genlrcvmsg+0x18b/0x290 [ 90.925269] ? pfxdevlinknlpredoit+0x10/0x10 [ 90.925506] ? pfxdevlinknleswitchsetdoit+0x10/0x10 [ 90.925766] ? pfxdevlinknlpostdoit+0x10/0x10 [ 90.926001] ? pfxgenlrcvmsg+0x10/0x10 [ 90.926206] netlinkrcvskb+0x52/0x100 [ 90.926393] genlrcv+0x28/0x40 [ 90.926557] netlinkunicast+0x27d/0x3d0 [ 90.926749] netlinksendmsg+0x1f7/0x430 [ 90.926942] syssendto+0x213/0x220 [ 90.927127] ? sysrecvmsg+0x6a/0xd0 [ 90.927312] x64syssendto+0x24/0x30 [ 90.927504] dosyscall64+0x50/0x1c0 [ 90.927687] entrySYSCALL64afterhwframe+0x76/0x7e [ 90.927929] RIP: 0033:0x7f7d0363e047

Affected Software

162 affected componentsFixes available
Linux Linux kernel
Linux Linux kernel>=6.12.9<6.12.81
Linux Linux kernel>=6.13.1<6.18.22
Linux Linux kernel>=6.19<6.19.12
Linux Linux kernel=6.13
Linux Linux kernel=6.13-rc6
Linux Linux kernel=6.13-rc7
Linux Linux kernel=7.0-rc1
Linux Linux kernel=7.0-rc2
Linux Linux kernel=7.0-rc3
Linux Linux kernel=7.0-rc4
Linux Linux kernel=7.0-rc5
Linux Linux kernel=7.0-rc6
ubuntu/linux-hwe-edge*
ubuntu/linux-aws-5.0*
ubuntu/linux-aws-5.3*
ubuntu/linux-azure*
ubuntu/linux-azure-5.3*
ubuntu/linux-azure-edge*
ubuntu/linux-gcp*
ubuntu/linux-gcp-5.3*
ubuntu/linux-gke-4.15*
ubuntu/linux-gke-5.4*
ubuntu/linux-gkeop-5.4*
ubuntu/linux-hwe*
ubuntu/linux-hwe-edge*
ubuntu/linux-oem*
ubuntu/linux-oracle-5.0*
ubuntu/linux-oracle-5.3*
ubuntu/linux-aws-5.11*
ubuntu/linux-aws-5.13*
ubuntu/linux-aws-5.8*
ubuntu/linux-azure-5.11*
ubuntu/linux-azure-5.13*
ubuntu/linux-azure-5.8*
ubuntu/linux-azure-fde*
ubuntu/linux-gcp-5.11*
ubuntu/linux-gcp-5.13*
ubuntu/linux-gcp-5.8*
ubuntu/linux-gke*
ubuntu/linux-gke-5.15*
ubuntu/linux-gkeop*
ubuntu/linux-gkeop-5.15*
ubuntu/linux-hwe-5.11*
ubuntu/linux-hwe-5.13*
ubuntu/linux-hwe-5.8*
ubuntu/linux-intel-5.13*
ubuntu/linux-oem-5.10*
ubuntu/linux-oem-5.13*
ubuntu/linux-oem-5.6*
ubuntu/linux-oracle-5.11*
ubuntu/linux-oracle-5.13*
ubuntu/linux-oracle-5.8*
ubuntu/linux-raspi2*
ubuntu/linux-riscv*
ubuntu/linux-riscv-5.11*
ubuntu/linux-riscv-5.8*
ubuntu/linux-allwinner-5.19*
ubuntu/linux-aws-5.19*
ubuntu/linux-aws-6.2*
ubuntu/linux-aws-6.5*
ubuntu/linux-aws-6.8<6.8.0-1061.64~22.04.1
6.8.0-1061.64~22.04.1
ubuntu/linux-azure-5.19*
ubuntu/linux-azure-6.2*
ubuntu/linux-azure-6.5*
ubuntu/linux-azure-6.8<6.8.0-1063.71~22.04.1
6.8.0-1063.71~22.04.1
ubuntu/linux-azure-fde-5.19*
ubuntu/linux-azure-fde-6.2*
ubuntu/linux-azure-fde-6.8<6.8.0-1062.69~22.04.1
6.8.0-1062.69~22.04.1
ubuntu/linux-gcp-5.19*
ubuntu/linux-gcp-6.2*
ubuntu/linux-gcp-6.5*
ubuntu/linux-gcp-6.8<6.8.0-1064.72~22.04.1
6.8.0-1064.72~22.04.1
ubuntu/linux-hwe-5.19*
ubuntu/linux-hwe-6.2*
ubuntu/linux-hwe-6.5*
ubuntu/linux-hwe-6.8<6.8.0-136.136~22.04.1
6.8.0-136.136~22.04.1
ubuntu/linux-ibm-6.8<6.8.0-1061.62~22.04.1
6.8.0-1061.62~22.04.1
ubuntu/linux-intel-iot-realtime*
ubuntu/linux-lowlatency-hwe-5.19*
ubuntu/linux-lowlatency-hwe-6.2*
ubuntu/linux-lowlatency-hwe-6.5*
ubuntu/linux-lowlatency-hwe-6.8<6.8.0-136.136.2~22.04.1
6.8.0-136.136.2~22.04.1
ubuntu/linux-nvidia-6.2*
ubuntu/linux-nvidia-6.5*
ubuntu/linux-nvidia-6.8<6.8.0-1059.62~22.04.1
6.8.0-1059.62~22.04.1
ubuntu/linux-oem-5.17*
ubuntu/linux-oem-6.0*
ubuntu/linux-oem-6.1*
ubuntu/linux-oem-6.5*
ubuntu/linux-oracle-6.5*
ubuntu/linux-oracle-6.8<6.8.0-1058.61~22.04.1
6.8.0-1058.61~22.04.1
ubuntu/linux-realtime*
ubuntu/linux-riscv*
ubuntu/linux-riscv-5.19*
ubuntu/linux-riscv-6.5*
ubuntu/linux-riscv-6.8<6.8.0-136.136~22.04.3
6.8.0-136.136~22.04.3
ubuntu/linux-starfive-5.19*
ubuntu/linux-starfive-6.2*
ubuntu/linux-starfive-6.5*
ubuntu/linux-realtime-6.8<6.8.1-1056.57~22.04.2
6.8.1-1056.57~22.04.2
ubuntu/linux<6.8.0-136.136
6.8.0-136.136
ubuntu/linux-aws<6.8.0-1061.64
6.8.0-1061.64
ubuntu/linux-aws-6.14*
ubuntu/linux-aws-6.17*
ubuntu/linux-azure<6.8.0-1063.71
6.8.0-1063.71
ubuntu/linux-azure-6.11*
ubuntu/linux-azure-6.14*
ubuntu/linux-azure-6.17*
ubuntu/linux-azure-fde<6.8.0-1062.69
6.8.0-1062.69
ubuntu/linux-azure-fde-6.14*
ubuntu/linux-azure-nvidia*
ubuntu/linux-azure-nvidia-6.14*
ubuntu/linux-gcp<6.8.0-1064.72
6.8.0-1064.72
ubuntu/linux-gcp-6.11*
ubuntu/linux-gcp-6.14*
ubuntu/linux-gke<6.8.0-1059.67
6.8.0-1059.67
ubuntu/linux-gkeop<6.8.0-1046.50
6.8.0-1046.50
ubuntu/linux-hwe-6.11*
ubuntu/linux-hwe-6.14*
ubuntu/linux-hwe-6.17*
ubuntu/linux-ibm<6.8.0-1061.62
6.8.0-1061.62
ubuntu/linux-lowlatency<6.8.0-136.136.2
6.8.0-136.136.2
ubuntu/linux-lowlatency-hwe-6.11*
ubuntu/linux-nvidia<6.8.0-1059.62
6.8.0-1059.62
ubuntu/linux-nvidia-6.11*
ubuntu/linux-nvidia-6.17*
ubuntu/linux-nvidia-lowlatency<6.8.0-1059.62.1
6.8.0-1059.62.1
ubuntu/linux-nvidia-tegra<6.8.0-1030.31
6.8.0-1030.31
ubuntu/linux-oem-6.11*
ubuntu/linux-oem-6.14*
ubuntu/linux-oem-6.17*
ubuntu/linux-oem-6.8*
ubuntu/linux-oracle<6.8.0-1058.61
6.8.0-1058.61
ubuntu/linux-oracle-6.14*
ubuntu/linux-oracle-6.17*
ubuntu/linux-raspi<6.8.0-1061.65
6.8.0-1061.65
ubuntu/linux-raspi-realtime*
ubuntu/linux-realtime*
ubuntu/linux-riscv*
ubuntu/linux-riscv-6.14*
ubuntu/linux-riscv-6.17*
ubuntu/linux-xilinx<6.8.0-1033.34
6.8.0-1033.34
ubuntu/linux-bluefield<6.8.0-1028.33
6.8.0-1028.33
ubuntu/linux-raspi-realtime<6.8.0-2050.52
6.8.0-2050.52
ubuntu/linux-realtime<6.8.1-1056.57
6.8.1-1056.57
ubuntu/linux-realtime-6.14*
ubuntu/linux-realtime-6.17*
ubuntu/linux-aws-fips<6.8.0-1061.64+fips1
6.8.0-1061.64+fips1
ubuntu/linux-azure-fips<6.8.0-1063.71+fips2
6.8.0-1063.71+fips2
ubuntu/linux-fips<6.8.0-136.136+fips2
6.8.0-136.136+fips2
ubuntu/linux-gcp-fips<6.8.0-1064.72+fips1
6.8.0-1064.72+fips1
ubuntu/linux*
ubuntu/linux-aws*
ubuntu/linux-azure*
ubuntu/linux-azure-fde*
ubuntu/linux-gcp*
ubuntu/linux-oracle*
ubuntu/linux-raspi*
ubuntu/linux-realtime*
ubuntu/linux-riscv*
ubuntu/linux-nvidia<7.0.0-1006.6
7.0.0-1006.6

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade ubuntu/linux-aws-6.8 to a version that resolves this vulnerability.

    Fixed in 6.8.0-1061.64~22.04.1
  2. Upgrade

    Upgrade ubuntu/linux-azure-6.8 to a version that resolves this vulnerability.

    Fixed in 6.8.0-1063.71~22.04.1
  3. Upgrade

    Upgrade ubuntu/linux-azure-fde-6.8 to a version that resolves this vulnerability.

    Fixed in 6.8.0-1062.69~22.04.1
  4. Upgrade

    Upgrade ubuntu/linux-gcp-6.8 to a version that resolves this vulnerability.

    Fixed in 6.8.0-1064.72~22.04.1
  5. Upgrade

    Upgrade ubuntu/linux-hwe-6.8 to a version that resolves this vulnerability.

    Fixed in 6.8.0-136.136~22.04.1
  6. Upgrade

    Upgrade ubuntu/linux-ibm-6.8 to a version that resolves this vulnerability.

    Fixed in 6.8.0-1061.62~22.04.1
  7. Upgrade

    Upgrade ubuntu/linux-lowlatency-hwe-6.8 to a version that resolves this vulnerability.

    Fixed in 6.8.0-136.136.2~22.04.1
  8. Upgrade

    Upgrade ubuntu/linux-nvidia-6.8 to a version that resolves this vulnerability.

    Fixed in 6.8.0-1059.62~22.04.1
  9. Upgrade

    Upgrade ubuntu/linux-oracle-6.8 to a version that resolves this vulnerability.

    Fixed in 6.8.0-1058.61~22.04.1
  10. Upgrade

    Upgrade ubuntu/linux-riscv-6.8 to a version that resolves this vulnerability.

    Fixed in 6.8.0-136.136~22.04.3
  11. Upgrade

    Upgrade ubuntu/linux-realtime-6.8 to a version that resolves this vulnerability.

    Fixed in 6.8.1-1056.57~22.04.2
  12. Upgrade

    Upgrade ubuntu/linux to a version that resolves this vulnerability.

    Fixed in 6.8.0-136.136
  13. Upgrade

    Upgrade ubuntu/linux-aws to a version that resolves this vulnerability.

    Fixed in 6.8.0-1061.64
  14. Upgrade

    Upgrade ubuntu/linux-azure to a version that resolves this vulnerability.

    Fixed in 6.8.0-1063.71
  15. Upgrade

    Upgrade ubuntu/linux-azure-fde to a version that resolves this vulnerability.

    Fixed in 6.8.0-1062.69
  16. Upgrade

    Upgrade ubuntu/linux-gcp to a version that resolves this vulnerability.

    Fixed in 6.8.0-1064.72
  17. Upgrade

    Upgrade ubuntu/linux-gke to a version that resolves this vulnerability.

    Fixed in 6.8.0-1059.67
  18. Upgrade

    Upgrade ubuntu/linux-gkeop to a version that resolves this vulnerability.

    Fixed in 6.8.0-1046.50
  19. Upgrade

    Upgrade ubuntu/linux-ibm to a version that resolves this vulnerability.

    Fixed in 6.8.0-1061.62
  20. Upgrade

    Upgrade ubuntu/linux-lowlatency to a version that resolves this vulnerability.

    Fixed in 6.8.0-136.136.2
  21. Upgrade

    Upgrade ubuntu/linux-nvidia to a version that resolves this vulnerability.

    Fixed in 6.8.0-1059.62
  22. Upgrade

    Upgrade ubuntu/linux-nvidia-lowlatency to a version that resolves this vulnerability.

    Fixed in 6.8.0-1059.62.1
  23. Upgrade

    Upgrade ubuntu/linux-nvidia-tegra to a version that resolves this vulnerability.

    Fixed in 6.8.0-1030.31
  24. Upgrade

    Upgrade ubuntu/linux-oracle to a version that resolves this vulnerability.

    Fixed in 6.8.0-1058.61
  25. Upgrade

    Upgrade ubuntu/linux-raspi to a version that resolves this vulnerability.

    Fixed in 6.8.0-1061.65
  26. Upgrade

    Upgrade ubuntu/linux-xilinx to a version that resolves this vulnerability.

    Fixed in 6.8.0-1033.34
  27. Upgrade

    Upgrade ubuntu/linux-bluefield to a version that resolves this vulnerability.

    Fixed in 6.8.0-1028.33
  28. Upgrade

    Upgrade ubuntu/linux-raspi-realtime to a version that resolves this vulnerability.

    Fixed in 6.8.0-2050.52
  29. Upgrade

    Upgrade ubuntu/linux-realtime to a version that resolves this vulnerability.

    Fixed in 6.8.1-1056.57
  30. Upgrade

    Upgrade ubuntu/linux-aws-fips to a version that resolves this vulnerability.

    Fixed in 6.8.0-1061.64+fips1
  31. Upgrade

    Upgrade ubuntu/linux-azure-fips to a version that resolves this vulnerability.

    Fixed in 6.8.0-1063.71+fips2
  32. Upgrade

    Upgrade ubuntu/linux-fips to a version that resolves this vulnerability.

    Fixed in 6.8.0-136.136+fips2
  33. Upgrade

    Upgrade ubuntu/linux-gcp-fips to a version that resolves this vulnerability.

    Fixed in 6.8.0-1064.72+fips1
  34. Upgrade

    Upgrade ubuntu/linux-nvidia to a version that resolves this vulnerability.

    Fixed in 7.0.0-1006.6
  35. Configuration

    Set the rollback flag MLX5_PRIV_FLAGS_SWITCH_LEGACY when switchdev mode fails, so rollback avoids unregistering the uplink netdev.

    Linux kernel net/mlx5 switchdev rollback MLX5_PRIV_FLAGS_SWITCH_LEGACY = legacy mode

Event History

May 1, 2026
CVE Published
via MITRE·02:15 PM
Data Sourced
via MITRE·02:15 PM
Description
Data Sourced
via OSV·03:16 PM
DescriptionSeverityAffected Software
Data Sourced
via NVD·03:16 PM
RemedyDescriptionSeverityAffected Software

Frequently Asked Questions

1

What is the severity of CVE-2026-43012?

CVE-2026-43012 has been classified with a medium severity due to its impact on mode rollback during switchdev failures.

2

How do I fix CVE-2026-43012?

To fix CVE-2026-43012, update the Linux kernel to the patched version that includes the rollback improvements for switchdev mode.

3

What systems are affected by CVE-2026-43012?

CVE-2026-43012 affects various versions of the Linux kernel that utilize the mlx5 network driver.

4

What type of vulnerability is CVE-2026-43012?

CVE-2026-43012 is a vulnerability involving improper handling of mode rollbacks in the switchdev feature of the Linux kernel.

5

Is there a workaround for CVE-2026-43012?

Currently, there are no specific workarounds for CVE-2026-43012; updating to a patched version of the kernel is the recommended action.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203