In the Linux kernel, the following vulnerability has been resolved:
mlxsw: spectrum_router: Fix neighbour use-after-free
We sometimes observe use-after-free when dereferencing a neighbour [1]. The problem seems to be that the driver stores a pointer to the neighbour, but without holding a reference on it. A reference is only taken when the neighbour is used by a nexthop.
Fix by simplifying the reference counting scheme. Always take a reference when storing a neighbour pointer in a neighbour entry. Avoid taking a referencing when the neighbour is used by a nexthop as the neighbour entry associated with the nexthop already holds a reference.
Tested by running the test that uncovered the problem over 300 times. Without this patch the problem was reproduced after a handful of iterations.
[1] BUG: KASAN: slab-use-after-free in mlxsw_sp_neigh_entry_update+0x2d4/0x310 Read of size 8 at addr ffff88817f8e3420 by task ip/3929
CPU: 3 UID: 0 PID: 3929 Comm: ip Not tainted 6.18.0-rc4-virtme-g36b21a067510 #3 PREEMPT(full) Hardware name: Nvidia SN5600/VMOD0013, BIOS 5.13 05/31/2023 Call Trace: <TASK> dump_stack_lvl+0x6f/0xa0 print_address_description.constprop.0+0x6e/0x300 print_report+0xfc/0x1fb kasan_report+0xe4/0x110 mlxsw_sp_neigh_entry_update+0x2d4/0x310 mlxsw_sp_router_rif_gone_sync+0x35f/0x510 mlxsw_sp_rif_destroy+0x1ea/0x730 mlxsw_sp_inetaddr_port_vlan_event+0xa1/0x1b0 __mlxsw_sp_inetaddr_lag_event+0xcc/0x130 __mlxsw_sp_inetaddr_event+0xf5/0x3c0 mlxsw_sp_router_netdevice_event+0x1015/0x1580 notifier_call_chain+0xcc/0x150 call_netdevice_notifiers_info+0x7e/0x100 __netdev_upper_dev_unlink+0x10b/0x210 netdev_upper_dev_unlink+0x79/0xa0 vrf_del_slave+0x18/0x50 do_set_master+0x146/0x7d0 do_setlink.isra.0+0x9a0/0x2880 rtnl_newlink+0x637/0xb20 rtnetlink_rcv_msg+0x6fe/0xb90 netlink_rcv_skb+0x123/0x380 netlink_unicast+0x4a3/0x770 netlink_sendmsg+0x75b/0xc90 __sock_sendmsg+0xbe/0x160 ____sys_sendmsg+0x5b2/0x7d0 ___sys_sendmsg+0xfd/0x180 __sys_sendmsg+0x124/0x1c0 do_syscall_64+0xbb/0xfd0 entry_SYSCALL_64_after_hwframe+0x4b/0x53 [...]
Allocated by task 109: kasan_save_stack+0x30/0x50 kasan_save_track+0x14/0x30 __kasan_kmalloc+0x7b/0x90 __kmalloc_noprof+0x2c1/0x790 neigh_alloc+0x6af/0x8f0 ___neigh_create+0x63/0xe90 mlxsw_sp_nexthop_neigh_init+0x430/0x7e0 mlxsw_sp_nexthop_type_init+0x212/0x960 mlxsw_sp_nexthop6_group_info_init.constprop.0+0x81f/0x1280 mlxsw_sp_nexthop6_group_get+0x392/0x6a0 mlxsw_sp_fib6_entry_create+0x46a/0xfd0 mlxsw_sp_router_fib6_replace+0x1ed/0x5f0 mlxsw_sp_router_fib6_event_work+0x10a/0x2a0 process_one_work+0xd57/0x1390 worker_thread+0x4d6/0xd40 kthread+0x355/0x5b0 ret_from_fork+0x1d4/0x270 ret_from_fork_asm+0x11/0x20
Freed by task 154: kasan_save_stack+0x30/0x50 kasan_save_track+0x14/0x30 __kasan_save_free_info+0x3b/0x60 __kasan_slab_free+0x43/0x70 kmem_cache_free_bulk.part.0+0x1eb/0x5e0 kvfree_rcu_bulk+0x1f2/0x260 kfree_rcu_work+0x130/0x1b0 process_one_work+0xd57/0x1390 worker_thread+0x4d6/0xd40 kthread+0x355/0x5b0 ret_from_fork+0x1d4/0x270 ret_from_fork_asm+0x11/0x20
Last potentially related work creation: kasan_save_stack+0x30/0x50 kasan_record_aux_stack+0x8c/0xa0 kvfree_call_rcu+0x93/0x5b0 mlxsw_sp_router_neigh_event_work+0x67d/0x860 process_one_work+0xd57/0x1390 worker_thread+0x4d6/0xd40 kthread+0x355/0x5b0 ret_from_fork+0x1d4/0x270 ret_from_fork_asm+0x11/0x20
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Amazon Linux Ami 2 | — | Upgrade python-perf-debuginfoUpgrade perf-debuginfoUpgrade kernel-tools-develUpgrade kernel-headersUpgrade kernel-livepatch-5.10.248-247.988Upgrade kernel-debuginfo-common-aarch64Upgrade perfUpgrade kernel-debuginfoUpgrade bpftoolUpgrade bpftool-debuginfoUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-toolsUpgrade python-perfUpgrade kernelUpgrade kernel-develUpgrade kernel-tools-debuginfo | May 20, 2026 | May 20, 2026 |
| Debian | — | Upgrade linuxUpgrade linux-6.1 | Feb 11, 2026 | Feb 11, 2026 |
| Huawei Euleros 2_0_sp12 | — | Upgrade kernel-abi-stablelistsUpgrade kernelUpgrade python3-perfUpgrade kernel-tools-libsUpgrade kernel-toolsUpgrade bpftool | Mar 17, 2026 | Mar 16, 2026 |
| Huawei Euleros 2_0_sp13 | — | Upgrade python3-perfUpgrade bpftoolUpgrade kernelUpgrade kernel-tools-libsUpgrade kernel-abi-stablelistsUpgrade kernel-tools | Mar 10, 2026 | Mar 10, 2026 |
| Redhat_linux | — | No solution exists | Jul 17, 2026 | Jan 13, 2026 |
| Ubuntu | — | Upgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-5.15.0-1055-nvidia-tegraUpgrade linux-image-6.17.0-22-genericUpgrade linux-image-5.15.0-173-genericUpgrade linux-image-5.15.0-1109-azureUpgrade linux-image-nvidia-tegraUpgrade linux-image-nvidia-tegra-rtUpgrade linux-image-6.17.0-1020-oemUpgrade linux-image-6.8.0-1052-aws-64kUpgrade linux-image-aws-lts-22.04Upgrade linux-image-5.15.0-173-generic-64kUpgrade linux-image-generic-5.15Upgrade linux-image-oem-22.04Upgrade linux-image-5.15.0-1109-azure-fipsUpgrade linux-image-nvidia-tegra-igx-rt-5.15Upgrade linux-image-fips-5.15Upgrade linux-image-oracle-lts-24.04Upgrade linux-image-raspiUpgrade linux-image-6.8.0-2042-raspi-realtimeUpgrade linux-image-oem-24.04bUpgrade linux-image-intelUpgrade linux-image-aws-6.17Upgrade linux-image-azure-lts-24.04Upgrade linux-image-nvidia-5.15Upgrade linux-image-5.15.0-1099-gkeUpgrade linux-image-6.8.0-1051-nvidiaUpgrade linux-image-fips-6.8Upgrade linux-image-gke-6.8Upgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-gcp-fips-6.8Upgrade linux-image-gke-5.15Upgrade linux-image-lowlatency-6.8Upgrade linux-image-nvidia-lowlatency-6.8Upgrade linux-image-6.8.0-110-genericUpgrade linux-image-oracle-64k-lts-24.04Upgrade linux-image-5.15.0-1103-aws-64kUpgrade linux-image-6.8.0-1051-nvidia-lowlatencyUpgrade linux-image-intel-iot-realtimeUpgrade linux-image-raspi-realtime-6.8Upgrade linux-image-6.17.0-1011-oracle-64kUpgrade linux-image-6.8.0-1022-nvidia-tegra-rtUpgrade linux-image-azure-fips-6.8Upgrade linux-image-realtime-hwe-22.04Upgrade linux-image-5.15.0-1044-nvidia-tegra-igx-rtUpgrade linux-image-5.15.0-1098-nvidiaUpgrade linux-image-ibmUpgrade linux-image-intel-iotg-5.15Upgrade linux-image-lowlatency-hwe-20.04Upgrade linux-image-oem-20.04bUpgrade linux-image-oracle-64k-6.8Upgrade linux-image-virtual-hwe-22.04Upgrade linux-image-genericUpgrade linux-image-nvidia-tegra-6.8Upgrade linux-image-5.15.0-1055-nvidia-tegra-rtUpgrade linux-image-6.8.0-1049-oracleUpgrade linux-image-azure-fips-5.15Upgrade linux-image-lowlatencyUpgrade linux-image-azure-lts-22.04Upgrade linux-image-6.8.0-1051-nvidia-64kUpgrade linux-image-generic-lpae-5.15Upgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-xilinxUpgrade linux-image-generic-64kUpgrade linux-image-gkeopUpgrade linux-image-generic-lpaeUpgrade linux-image-gke-64kUpgrade linux-image-generic-6.8Upgrade linux-image-kvm-5.15Upgrade linux-image-6.8.0-1054-gcpUpgrade linux-image-gcp-64k-lts-24.04Upgrade linux-image-lowlatency-64kUpgrade linux-image-6.8.0-1054-azureUpgrade linux-image-6.8.0-1054-gcp-64kUpgrade linux-image-generic-6.17Upgrade linux-image-5.15.0-1103-aws-fipsUpgrade linux-image-ibm-classicUpgrade linux-image-nvidia-tegra-igx-5.15Upgrade linux-image-gkeop-6.8Upgrade linux-image-oem-20.04cUpgrade linux-image-5.15.0-1103-gcpUpgrade linux-image-6.8.0-110-lowlatency-64kUpgrade linux-image-aws-fipsUpgrade linux-image-nvidia-tegra-5.15Upgrade linux-image-ibm-6.8Upgrade linux-image-virtual-6.8Upgrade linux-image-6.8.0-1022-nvidia-tegraUpgrade linux-image-virtual-6.17Upgrade linux-image-5.15.0-1044-nvidia-tegra-igxUpgrade linux-image-5.15.0-173-lowlatencyUpgrade linux-image-6.8.0-1037-gkeopUpgrade linux-image-5.15.0-1097-raspiUpgrade linux-image-6.8.0-1050-gkeUpgrade linux-image-oem-22.04aUpgrade linux-image-5.15.0-1094-intel-iot-realtimeUpgrade linux-image-5.15.0-1097-ibmUpgrade linux-image-6.8.0-1052-aws-fipsUpgrade linux-image-nvidiaUpgrade linux-image-nvidia-lowlatency-5.15Upgrade linux-image-intel-iotgUpgrade linux-image-nvidia-lowlatencyUpgrade linux-image-gcp-lts-22.04Upgrade linux-image-generic-64k-hwe-20.04Upgrade linux-image-nvidia-tegra-rt-5.15Upgrade linux-image-oracle-5.15Upgrade linux-image-6.17.0-1012-awsUpgrade linux-image-azure-6.17Upgrade linux-image-realtime-hwe-24.04Upgrade linux-image-azureUpgrade linux-image-fipsUpgrade linux-image-oem-22.04cUpgrade linux-image-aws-6.8Upgrade linux-image-6.8.0-110-lowlatencyUpgrade linux-image-nvidia-tegra-igx-rtUpgrade linux-image-gcp-fipsUpgrade linux-image-raspi-realtimeUpgrade linux-image-oem-20.04Upgrade linux-image-gcp-lts-24.04Upgrade linux-image-virtualUpgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-ibm-lts-24.04Upgrade linux-image-nvidia-64kUpgrade linux-image-gkeop-5.15Upgrade linux-image-gkeUpgrade linux-image-6.8.0-1050-gke-64kUpgrade linux-image-6.8.0-1049-oracle-64kUpgrade linux-image-6.17.0-1011-oracleUpgrade linux-image-virtual-hwe-20.04Upgrade linux-image-realtime-6.17Upgrade linux-image-5.15.0-1102-realtimeUpgrade linux-image-oracle-6.17Upgrade linux-image-oem-24.04Upgrade linux-image-intel-iot-realtime-5.15Upgrade linux-image-aws-lts-24.04Upgrade linux-image-aws-64k-6.17Upgrade linux-image-5.15.0-173-lowlatency-64kUpgrade linux-image-gcp-6.8Upgrade linux-image-5.15.0-1100-oracleUpgrade linux-image-5.15.0-1098-nvidia-lowlatencyUpgrade linux-image-azure-fipsUpgrade linux-image-aws-64k-lts-22.04Upgrade linux-image-aws-64kUpgrade linux-image-aws-5.15Upgrade linux-image-6.8.0-1059-azureUpgrade linux-image-6.17.0-1012-aws-64kUpgrade linux-image-raspi-nolpaeUpgrade linux-image-raspi-6.8Upgrade linux-image-oem-24.04cUpgrade linux-image-oem-24.04aUpgrade linux-image-oem-22.04bUpgrade linux-image-kvmUpgrade linux-image-gcp-fips-5.15Upgrade linux-image-gcp-64k-6.17Upgrade linux-image-lowlatency-5.15Upgrade linux-image-nvidia-lowlatency-64k-6.8Upgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-realtime-5.15Upgrade linux-image-virtual-5.15Upgrade linux-image-oracleUpgrade linux-image-nvidia-64k-6.8Upgrade linux-image-virtual-hwe-24.04Upgrade linux-image-5.15.0-1086-gkeopUpgrade linux-image-raspi-6.17Upgrade linux-image-6.8.0-110-generic-64kUpgrade linux-image-5.15.0-1067-xilinx-zynqmpUpgrade linux-image-nvidia-tegra-rt-6.8Upgrade linux-image-raspi-5.15Upgrade linux-image-azure-cvmUpgrade linux-image-xilinx-zynqmpUpgrade linux-image-ibm-5.15Upgrade linux-image-realtime-6.8.1Upgrade linux-image-realtimeUpgrade linux-image-5.15.0-1098-intel-iotgUpgrade linux-image-xilinx-6.8Upgrade linux-image-gcp-64k-6.8Upgrade linux-image-gcp-6.17Upgrade linux-image-gcp-5.15Upgrade linux-image-nvidia-tegra-igxUpgrade linux-image-6.17.0-22-generic-64kUpgrade linux-image-5.15.0-1110-azureUpgrade linux-image-aws-64k-5.15Upgrade linux-image-6.17.0-1010-realtimeUpgrade linux-image-aws-64k-6.8Upgrade linux-image-5.15.0-173-generic-lpaeUpgrade linux-image-lowlatency-64k-6.8Upgrade linux-image-6.8.0-1054-azure-fipsUpgrade linux-image-oracle-64k-6.17Upgrade linux-image-xilinx-zynqmp-5.15Upgrade linux-image-oracle-lts-22.04Upgrade linux-image-oracle-6.8Upgrade linux-image-oem-24.04dUpgrade linux-image-oem-22.04dUpgrade linux-image-generic-lpae-hwe-20.04Upgrade linux-image-generic-hwe-24.04Upgrade linux-image-generic-64k-5.15Upgrade linux-image-azure-6.8Upgrade linux-image-azure-5.15Upgrade linux-image-aws-fips-5.15Upgrade linux-image-6.8.0-110-fipsUpgrade linux-image-6.17.0-1013-azureUpgrade linux-image-6.17.0-1012-gcp-64kUpgrade linux-image-5.15.0-173-fipsUpgrade linux-image-5.15.0-1103-gcp-fipsUpgrade linux-image-5.15.0-1103-awsUpgrade linux-image-5.15.0-1095-kvmUpgrade linux-image-lowlatency-64k-hwe-20.04Upgrade linux-image-oracle-64kUpgrade linux-image-awsUpgrade linux-image-gcp-64kUpgrade linux-image-6.8.1-1047-realtimeUpgrade linux-image-oem-20.04dUpgrade linux-image-generic-hwe-20.04Upgrade linux-image-nvidia-6.8Upgrade linux-image-generic-64k-6.8Upgrade linux-image-gcpUpgrade linux-image-6.8.0-1052-raspiUpgrade linux-image-6.17.0-1014-raspiUpgrade linux-image-oem-6.17Upgrade linux-image-6.8.0-1051-ibmUpgrade linux-image-6.8.0-1054-gcp-fipsUpgrade linux-image-6.17.0-1012-gcpUpgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-generic-hwe-22.04Upgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-lowlatency-64k-5.15Upgrade linux-image-gke-64k-6.8Upgrade linux-image-generic-64k-6.17Upgrade linux-image-aws-fips-6.8Upgrade linux-image-aws-64k-lts-24.04Upgrade linux-image-6.8.0-1052-awsUpgrade linux-image-6.8.0-1051-nvidia-lowlatency-64kUpgrade linux-image-6.8.0-1029-xilinx | Mar 17, 2026 | Jan 13, 2026 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | May 27, 2026 | Jan 13, 2026 |
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