In the Linux kernel, the following vulnerability has been resolved:
net: Remove RTNL dance for SIOCBRADDIF and SIOCBRDELIF.
SIOCBRDELIF is passed to dev_ioctl() first and later forwarded to br_ioctl_call(), which causes unnecessary RTNL dance and the splat below [0] under RTNL pressure.
Let's say Thread A is trying to detach a device from a bridge and Thread B is trying to remove the bridge.
In dev_ioctl(), Thread A bumps the bridge device's refcnt by netdev_hold() and releases RTNL because the following br_ioctl_call() also re-acquires RTNL.
In the race window, Thread B could acquire RTNL and try to remove the bridge device. Then, rtnl_unlock() by Thread B will release RTNL and wait for netdev_put() by Thread A.
Thread A, however, must hold RTNL after the unlock in dev_ifsioc(), which may take long under RTNL pressure, resulting in the splat by Thread B.
Thread A (SIOCBRDELIF) Thread B (SIOCBRDELBR) ---------------------- ---------------------- sock_ioctl sock_ioctl `- sock_do_ioctl `- br_ioctl_call `- dev_ioctl `- br_ioctl_stub |- rtnl_lock | |- dev_ifsioc ' ' |- dev = __dev_get_by_name(...) |- netdev_hold(dev, ...) . / |- rtnl_unlock ------. | | |- br_ioctl_call `---> |- rtnl_lock Race | | `- br_ioctl_stub |- br_del_bridge Window | | | |- dev = __dev_get_by_name(...) | | | May take long | `- br_dev_delete(dev, ...) | | | under RTNL pressure | `- unregister_netdevice_queue(dev, ...) | | | | `- rtnl_unlock \ | |- rtnl_lock <-' `- netdev_run_todo | |- ... `- netdev_run_todo | `- rtnl_unlock |- __rtnl_unlock | |- netdev_wait_allrefs_any |- netdev_put(dev, ...) <----------------' Wait refcnt decrement and log splat below
To avoid blocking SIOCBRDELBR unnecessarily, let's not call dev_ioctl() for SIOCBRADDIF and SIOCBRDELIF.
In the dev_ioctl() path, we do the following:
1. Copy struct ifreq by get_user_ifreq in sock_do_ioctl() 2. Check CAP_NET_ADMIN in dev_ioctl() 3. Call dev_load() in dev_ioctl() 4. Fetch the master dev from ifr.ifr_name in dev_ifsioc()
3. can be done by request_module() in br_ioctl_call(), so we move 1., 2., and 4. to br_ioctl_stub().
Note that 2. is also checked later in add_del_if(), but it's better performed before RTNL.
SIOCBRADDIF and SIOCBRDELIF have been processed in dev_ioctl() since the pre-git era, and there seems to be no specific reason to process them there.
[0]: unregister_netdevice: waiting for wpan3 to become free. Usage count = 2 ref_tracker: wpan3@ffff8880662d8608 has 1/1 users at __netdev_tracker_alloc include/linux/netdevice.h:4282 [inline] netdev_hold include/linux/netdevice.h:4311 [inline] dev_ifsioc+0xc6a/0x1160 net/core/dev_ioctl.c:624 dev_ioctl+0x255/0x10c0 net/core/dev_ioctl.c:826 sock_do_ioctl+0x1ca/0x260 net/socket.c:1213 sock_ioctl+0x23a/0x6c0 net/socket.c:1318 vfs_ioctl fs/ioctl.c:51 [inline] __do_sys_ioctl fs/ioctl.c:906 [inline] __se_sys_ioctl fs/ioctl.c:892 [inline] __x64_sys_ioctl+0x1a4/0x210 fs/ioctl.c:892 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xcb/0x250 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Debian | — | Upgrade linuxUpgrade linux-6.1 | May 15, 2025 | Apr 16, 2025 |
| Oracle_linux | — | Upgrade kernel-uek | Mar 12, 2026 | Apr 16, 2025 |
| Redhat_linux | — | Upgrade kernel-rtUpgrade kernelNo solution exists | Jul 9, 2025 | Apr 16, 2025 |
| Suse | — | Upgrade kernel-64kbUpgrade ocfs2-kmp-rtUpgrade dlm-kmp-defaultUpgrade kernel-zfcpdumpUpgrade dtb-appleUpgrade kernel-debug-develUpgrade kernel-default-extraUpgrade kernel-syms-azureUpgrade kernel-rtUpgrade kernel-obs-qaUpgrade kernel-rt_debugUpgrade kernel-kvmsmall-develUpgrade kselftests-kmp-defaultUpgrade dtb-xilinxUpgrade kernel-symsUpgrade kernel-macrosUpgrade kernel-syms-rtUpgrade reiserfs-kmp-azureUpgrade kernel-rt-develUpgrade cluster-md-kmp-azureUpgrade kernel-rt-livepatch-develUpgrade dtb-socionextUpgrade kernel-azure-develUpgrade dtb-armUpgrade dtb-qcomUpgrade kernel-64kb-optionalUpgrade dtb-hisiliconUpgrade kernel-azure-vdsoUpgrade kernel-debugUpgrade dlm-kmp-azureUpgrade reiserfs-kmp-rtUpgrade dtb-mediatekUpgrade kernel-64kb-develUpgrade cluster-md-kmp-defaultUpgrade kernel-devel-rtUpgrade gfs2-kmp-rtUpgrade kernel-sourceUpgrade kernel-source-azureUpgrade dtb-amlogicUpgrade gfs2-kmp-64kbUpgrade kernel-devel-azureUpgrade kernel-kvmsmallUpgrade kernel-docsUpgrade kernel-default-develUpgrade kernel-rt_debug-vdsoUpgrade dtb-apmUpgrade dtb-exynosUpgrade dtb-amazonUpgrade ocfs2-kmp-defaultUpgrade kernel-source-vanillaUpgrade kernel-azure-extraUpgrade kernel-defaultUpgrade dtb-broadcomUpgrade dtb-amdUpgrade kernel-rt-vdsoUpgrade kernel-rt-optionalUpgrade kernel-obs-buildUpgrade kernel-default-optionalUpgrade dtb-sprdUpgrade dtb-lgUpgrade dtb-allwinnerUpgrade reiserfs-kmp-64kbUpgrade dlm-kmp-rtUpgrade dtb-alteraUpgrade kernel-source-rtUpgrade kernel-docs-htmlUpgrade reiserfs-kmp-defaultUpgrade kselftests-kmp-rtUpgrade kernel-rt_debug-develUpgrade gfs2-kmp-defaultUpgrade ocfs2-kmp-azureUpgrade kselftests-kmp-azureUpgrade kernel-64kb-extraUpgrade cluster-md-kmp-rtUpgrade kernel-develUpgrade kernel-default-vdsoUpgrade dtb-renesasUpgrade ocfs2-kmp-64kbUpgrade kernel-default-baseUpgrade kernel-default-livepatchUpgrade dtb-freescaleUpgrade kernel-default-livepatch-develUpgrade dtb-marvellUpgrade kernel-debug-vdsoUpgrade dtb-rockchipUpgrade kernel-azure-optionalUpgrade kernel-rt-extraUpgrade kernel-kvmsmall-vdsoUpgrade kernel-default-base-rebuildUpgrade kernel-azureUpgrade kselftests-kmp-64kbUpgrade dtb-caviumUpgrade dlm-kmp-64kbUpgrade cluster-md-kmp-64kbUpgrade gfs2-kmp-azureUpgrade dtb-nvidia | Dec 5, 2025 | Jul 8, 2025 |
| Ubuntu | — | Upgrade linux-image-nvidia-tegra-rt-6.8Upgrade linux-image-6.14.0-1007-azureUpgrade linux-image-gkeop-5.15Upgrade linux-image-nvidia-tegra-igxUpgrade linux-image-gke-64k-6.8Upgrade linux-image-6.8.0-110-fipsUpgrade linux-image-5.15.0-1103-gcp-fipsUpgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-6.8.0-1022-nvidia-tegra-rtUpgrade linux-image-aws-5.15Upgrade linux-image-generic-lpae-5.15Upgrade linux-image-oem-20.04Upgrade linux-image-6.8.0-110-generic-64kUpgrade linux-image-oem-22.04dUpgrade linux-image-gcp-64kUpgrade linux-image-5.15.0-1102-realtimeUpgrade linux-image-gcp-fips-5.15Upgrade linux-image-6.14.0-1007-azure-fdeUpgrade linux-image-generic-64k-5.15Upgrade linux-image-gcp-5.15Upgrade linux-image-azure-cvmUpgrade linux-image-6.14.0-22-genericUpgrade linux-image-6.8.0-1049-oracle-64kUpgrade linux-image-azure-5.15Upgrade linux-image-aws-fipsUpgrade linux-image-5.15.0-1110-azureUpgrade linux-image-realtime-5.15Upgrade linux-image-realtimeUpgrade linux-image-5.15.0-1098-nvidia-lowlatencyUpgrade linux-image-6.14.0-1007-oracleUpgrade linux-image-awsUpgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-5.15.0-1055-nvidia-tegraUpgrade linux-image-oracleUpgrade linux-image-xilinx-6.8Upgrade linux-image-6.14.0-1007-aws-64kUpgrade linux-image-intelUpgrade linux-image-generic-hwe-20.04Upgrade linux-image-oem-20.04cUpgrade linux-image-nvidia-tegra-rtUpgrade linux-image-nvidia-lowlatency-5.15Upgrade linux-image-6.8.0-1059-azureUpgrade linux-image-gcp-64k-6.8Upgrade linux-image-6.14.0-1004-realtimeUpgrade linux-image-virtual-hwe-22.04Upgrade linux-image-realtime-6.8.1Upgrade linux-image-6.8.0-1054-gcp-fipsUpgrade linux-image-intel-iot-realtimeUpgrade linux-image-5.15.0-1109-azure-fipsUpgrade linux-image-kvmUpgrade linux-image-ibm-5.15Upgrade linux-image-gkeUpgrade linux-image-6.8.0-1050-gke-64kUpgrade linux-image-5.15.0-1055-nvidia-tegra-rtUpgrade linux-image-gke-6.8Upgrade linux-image-6.14.0-1007-oracle-64kUpgrade linux-image-6.8.0-1029-xilinxUpgrade linux-image-aws-lts-24.04Upgrade linux-image-6.14.0-22-generic-64kUpgrade linux-image-5.15.0-1067-xilinx-zynqmpUpgrade linux-image-6.8.0-1051-nvidia-lowlatency-64kUpgrade linux-image-intel-iotgUpgrade linux-image-raspi-5.15Upgrade linux-image-aws-64kUpgrade linux-image-lowlatency-64k-5.15Upgrade linux-image-virtual-6.8Upgrade linux-image-6.8.1-1047-realtimeUpgrade linux-image-lowlatency-64k-6.8Upgrade linux-image-oracle-lts-22.04Upgrade linux-image-6.8.0-1052-raspiUpgrade linux-image-raspi-6.8Upgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-6.8.0-1054-gcp-64kUpgrade linux-image-5.15.0-1099-gkeUpgrade linux-image-nvidia-6.8Upgrade linux-image-generic-5.15Upgrade linux-image-nvidia-lowlatency-64k-6.8Upgrade linux-image-5.15.0-1086-gkeopUpgrade linux-image-5.15.0-173-genericUpgrade linux-image-6.8.0-1051-ibmUpgrade linux-image-xilinx-zynqmp-5.15Upgrade linux-image-raspiUpgrade linux-image-xilinx-zynqmpUpgrade linux-image-aws-fips-6.8Upgrade linux-image-gcp-lts-24.04Upgrade linux-image-aws-fips-5.15Upgrade linux-image-lowlatency-5.15Upgrade linux-image-generic-lpae-hwe-20.04Upgrade linux-image-6.14.0-1008-gcp-64kUpgrade linux-image-lowlatency-6.8Upgrade linux-image-nvidia-64kUpgrade linux-image-azure-6.8Upgrade linux-image-gke-64kUpgrade linux-image-gcp-6.8Upgrade linux-image-virtual-5.15Upgrade linux-image-azureUpgrade linux-image-azure-fips-5.15Upgrade linux-image-lowlatency-64k-hwe-20.04Upgrade linux-image-oracle-6.8Upgrade linux-image-nvidia-tegra-igx-5.15Upgrade linux-image-virtual-hwe-20.04Upgrade linux-image-nvidia-lowlatencyUpgrade linux-image-5.15.0-173-lowlatency-64kUpgrade linux-image-6.8.0-1052-awsUpgrade linux-image-gcpUpgrade linux-image-nvidia-5.15Upgrade linux-image-gkeop-6.8Upgrade linux-image-fips-6.8Upgrade linux-image-oem-22.04aUpgrade linux-image-aws-64k-6.8Upgrade linux-image-azure-lts-22.04Upgrade linux-image-raspi-nolpaeUpgrade linux-image-6.8.0-110-lowlatencyUpgrade linux-image-5.15.0-1097-ibmUpgrade linux-image-gcp-fips-6.8Upgrade linux-image-realtime-hwe-22.04Upgrade linux-image-raspi-realtime-6.8Upgrade linux-image-6.8.0-1037-gkeopUpgrade linux-image-ibm-lts-24.04Upgrade linux-image-6.8.0-1022-nvidia-tegraUpgrade linux-image-5.15.0-1094-intel-iot-realtimeUpgrade linux-image-oracle-64k-lts-24.04Upgrade linux-image-nvidia-tegra-6.8Upgrade linux-image-gkeopUpgrade linux-image-xilinxUpgrade linux-image-lowlatencyUpgrade linux-image-aws-6.8Upgrade linux-image-5.15.0-1098-nvidiaUpgrade linux-image-6.14.0-1007-awsUpgrade linux-image-intel-iot-realtime-5.15Upgrade linux-image-5.15.0-1044-nvidia-tegra-igxUpgrade linux-image-5.15.0-173-generic-64kUpgrade linux-image-aws-64k-lts-22.04Upgrade linux-image-azure-fdeUpgrade linux-image-aws-64k-lts-24.04Upgrade linux-image-6.8.0-1051-nvidiaUpgrade linux-image-5.15.0-1097-raspiUpgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-5.15.0-1098-intel-iotgUpgrade linux-image-6.8.0-1054-azureUpgrade linux-image-oracle-lts-24.04Upgrade linux-image-raspi-realtimeUpgrade linux-image-ibm-classicUpgrade linux-image-fipsUpgrade linux-image-azure-fips-6.8Upgrade linux-image-azure-fipsUpgrade linux-image-oracle-64kUpgrade linux-image-oem-22.04Upgrade linux-image-5.15.0-1109-azureUpgrade linux-image-virtualUpgrade linux-image-gke-5.15Upgrade linux-image-oracle-64k-6.8Upgrade linux-image-5.15.0-1103-aws-fipsUpgrade linux-image-6.8.0-1054-gcpUpgrade linux-image-nvidia-64k-6.8Upgrade linux-image-oem-20.04bUpgrade linux-image-5.15.0-173-lowlatencyUpgrade linux-image-6.14.0-1007-raspiUpgrade linux-image-5.15.0-173-fipsUpgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-gcp-lts-22.04Upgrade linux-image-6.8.0-1049-oracleUpgrade linux-image-azure-lts-24.04Upgrade linux-image-nvidia-tegra-igx-rtUpgrade linux-image-5.15.0-1044-nvidia-tegra-igx-rtUpgrade linux-image-5.15.0-173-generic-lpaeUpgrade linux-image-aws-lts-22.04Upgrade linux-image-ibm-6.8Upgrade linux-image-lowlatency-64kUpgrade linux-image-generic-lpaeUpgrade linux-image-gcp-64k-lts-24.04Upgrade linux-image-generic-6.8Upgrade linux-image-6.8.0-2042-raspi-realtimeUpgrade linux-image-6.8.0-1051-nvidia-lowlatencyUpgrade linux-image-5.15.0-1103-awsUpgrade linux-image-genericUpgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-6.14.0-1008-gcpUpgrade linux-image-oem-22.04bUpgrade linux-image-nvidia-tegra-rt-5.15Upgrade linux-image-nvidia-tegra-5.15Upgrade linux-image-gcp-fipsUpgrade linux-image-oem-22.04cUpgrade linux-image-nvidia-tegraUpgrade linux-image-5.15.0-1095-kvmUpgrade linux-image-aws-64k-5.15Upgrade linux-image-oem-20.04dUpgrade linux-image-kvm-5.15Upgrade linux-image-generic-hwe-22.04Upgrade linux-image-nvidia-lowlatency-6.8Upgrade linux-image-nvidiaUpgrade linux-image-lowlatency-hwe-20.04Upgrade linux-image-ibmUpgrade linux-image-fips-5.15Upgrade linux-image-generic-64k-hwe-20.04Upgrade linux-image-generic-64k-6.8Upgrade linux-image-6.8.0-1052-aws-fipsUpgrade linux-image-6.8.0-1050-gkeUpgrade linux-image-5.15.0-1103-gcpUpgrade linux-image-6.8.0-1054-azure-fipsUpgrade linux-image-oracle-5.15Upgrade linux-image-generic-64kUpgrade linux-image-nvidia-tegra-igx-rt-5.15Upgrade linux-image-6.8.0-1052-aws-64kUpgrade linux-image-6.8.0-110-genericUpgrade linux-image-intel-iotg-5.15Upgrade linux-image-6.8.0-110-lowlatency-64kUpgrade linux-image-5.15.0-1100-oracleUpgrade linux-image-6.8.0-1051-nvidia-64kUpgrade linux-image-5.15.0-1103-aws-64k | Jun 26, 2025 | Apr 16, 2025 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | May 27, 2026 | Apr 16, 2025 |
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