# CVE-2026-46287: net: txgbe: fix RTNL assertion warning when remove module

CVE-2026-46287 is fixed in 14 products on 1 platform, first by DEBIAN-CVE-2026-46287, released June 24, 2026. It is not reported as exploited. Patch Radar priority: Routine.

- Web page: https://patchblox.com/security/cve/CVE-2026-46287
- Priority: Routine
- CVSS: 5.5 (Moderate)
- EPSS: 0.0012
- CISA KEV: not listed
- Exploited (vendor report): no
- Publicly disclosed: no
- Published: Jun 8, 2026
- Vendor advisory: https://msrc.microsoft.com/update-guide/vulnerability/CVE-2026-46287

## Description

In the Linux kernel, the following vulnerability has been resolved:  net: txgbe: fix RTNL assertion warning when remove module  For the copper NIC with external PHY, the driver called phylink_connect_phy() during probe and phylink_disconnect_phy() during remove. It caused an RTNL assertion warning in phylink_disconnect_phy() upon module remove.  To fix this, add rtnl_lock() and rtnl_unlock() around the phylink_disconnect_phy() in remove function.   ------------[ cut here ]------------  RTNL: assertion failed at drivers/net/phy/phylink.c (2351)  WARNING: drivers/net/phy/phylink.c:2351 at phylink_disconnect_phy+0xd8/0xf0 [phylink], CPU#0: rmmod/4464  Modules linked in: ...  CPU: 0 UID: 0 PID: 4464 Comm: rmmod Kdump: loaded Not tainted 7.0.0-rc4+  Hardware name: Micro-Star International Co., Ltd. MS-7E16/X670E GAMING PLUS WIFI (MS-7E16), BIOS 1.90 12/31/2024  RIP: 0010:phylink_disconnect_phy+0xe4/0xf0 [phylink]  Code: 5b 41 5c 41 5d 41 5e 41 5f 5d 31 c0 31 d2 31 f6 31 ff e9 3a 38 8f e7 48 8d 3d 48 87 e2 ff ba 2f 09 00 00 48 c7 c6 c1 22 24 c0 <67> 48 0f b9 3a e9 34 ff ff ff 66 90 90 90 90 90 90 90 90 90 90 90  RSP: 0018:ffffce7288363ac0 EFLAGS: 00010246  RAX: 0000000000000000 RBX: ffff89654b2a1a00 RCX: 0000000000000000  RDX: 000000000000092f RSI: ffffffffc02422c1 RDI: ffffffffc0239020  RBP: ffffce7288363ae8 R08: 0000000000000000 R09: 0000000000000000  R10: 0000000000000000 R11: 0000000000000000 R12: ffff8964c4022000  R13: ffff89654fce3028 R14: ffff89654ebb4000 R15: ffffffffc0226348  FS:  0000795e80d93780(0000) GS:ffff896c52857000(0000) knlGS:0000000000000000  CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033  CR2: 00005b528b592000 CR3: 0000000170d0f000 CR4: 0000000000f50ef0  PKRU: 55555554  Call Trace:   <TASK>   txgbe_remove_phy+0xbb/0xd0 [txgbe]   txgbe_remove+0x4c/0xb0 [txgbe]   pci_device_remove+0x41/0xb0   device_remove+0x43/0x80   device_release_driver_internal+0x206/0x270   driver_detach+0x4a/0xa0   bus_remove_driver+0x83/0x120   driver_unregister+0x2f/0x60   pci_unregister_driver+0x40/0x90   txgbe_driver_exit+0x10/0x850 [txgbe]   __do_sys_delete_module.isra.0+0x1c3/0x2f0   __x64_sys_delete_module+0x12/0x20   x64_sys_call+0x20c3/0x2390   do_syscall_64+0x11c/0x1500   ? srso_alias_return_thunk+0x5/0xfbef5   ? do_syscall_64+0x15a/0x1500   ? srso_alias_return_thunk+0x5/0xfbef5   ? do_fault+0x312/0x580   ? srso_alias_return_thunk+0x5/0xfbef5   ? __handle_mm_fault+0x9d5/0x1040   ? srso_alias_return_thunk+0x5/0xfbef5   ? count_memcg_events+0x101/0x1d0   ? srso_alias_return_thunk+0x5/0xfbef5   ? handle_mm_fault+0x1e8/0x2f0   ? srso_alias_return_thunk+0x5/0xfbef5   ? do_user_addr_fault+0x2f8/0x820   ? srso_alias_return_thunk+0x5/0xfbef5   ? irqentry_exit+0xb2/0x600   ? srso_alias_return_thunk+0x5/0xfbef5   ? exc_page_fault+0x92/0x1c0   entry_SYSCALL_64_after_hwframe+0x76/0x7e

## Where it's fixed

| Platform | Product | Fixed in | Fix | Released |
|---|---|---|---|---|
| Linux | dtb-aarch64 opensuse-leap 16.0 | 6.12.0-160000.37.1 | [OPENSUSE-SU-2026:21555-1](https://patchblox.com/security/data/fix/linux/opensuse-su-2026-21555-1.md) | Aug 12, 2026 |
| Linux | kernel-64kb opensuse-leap 16.0 | 6.12.0-160000.37.1 | [OPENSUSE-SU-2026:21555-1](https://patchblox.com/security/data/fix/linux/opensuse-su-2026-21555-1.md) | Aug 12, 2026 |
| Linux | kernel-64kb sles 16.0 | 6.12.0-160000.37.1 | [SUSE-SU-2026:23231-1](https://patchblox.com/security/data/fix/linux/suse-su-2026-23231-1.md) | Aug 11, 2026 |
| Linux | kernel-azure opensuse-leap 16.0 | 6.12.0-160000.37.1 | [OPENSUSE-SU-2026:21555-1](https://patchblox.com/security/data/fix/linux/opensuse-su-2026-21555-1.md) | Aug 12, 2026 |
| Linux | kernel-azure sles 16.0 | 6.12.0-160000.37.1 | [SUSE-SU-2026:23231-1](https://patchblox.com/security/data/fix/linux/suse-su-2026-23231-1.md) | Aug 11, 2026 |
| Linux | kernel-default opensuse-leap 16.0 | 6.12.0-160000.37.1 | [OPENSUSE-SU-2026:21555-1](https://patchblox.com/security/data/fix/linux/opensuse-su-2026-21555-1.md) | Aug 12, 2026 |
| Linux | kernel-default sles 16.0 | 6.12.0-160000.37.1 | [SUSE-SU-2026:23237-1](https://patchblox.com/security/data/fix/linux/suse-su-2026-23237-1.md) | Aug 11, 2026 |
| Linux | kernel-default-base opensuse-leap 16.0 | 6.12.0-160000.37.1.160000.2.19 | [OPENSUSE-SU-2026:21555-1](https://patchblox.com/security/data/fix/linux/opensuse-su-2026-21555-1.md) | Aug 12, 2026 |
| Linux | kernel-default-base sles 16.0 | 6.12.0-160000.37.1.160000.2.19 | [SUSE-SU-2026:23231-1](https://patchblox.com/security/data/fix/linux/suse-su-2026-23231-1.md) | Aug 11, 2026 |
| Linux | kernel-docs opensuse-leap 16.0 | 6.12.0-160000.37.1 | [OPENSUSE-SU-2026:21555-1](https://patchblox.com/security/data/fix/linux/opensuse-su-2026-21555-1.md) | Aug 12, 2026 |
| Linux | kernel-docs sles 16.0 | 6.12.0-160000.37.1 | [SUSE-SU-2026:23231-1](https://patchblox.com/security/data/fix/linux/suse-su-2026-23231-1.md) | Aug 11, 2026 |
| Linux | kernel-kvmsmall opensuse-leap 16.0 | 6.12.0-160000.37.1 | [OPENSUSE-SU-2026:21555-1](https://patchblox.com/security/data/fix/linux/opensuse-su-2026-21555-1.md) | Aug 12, 2026 |
| Linux | kernel-kvmsmall sles 16.0 | 6.12.0-160000.37.1 | [SUSE-SU-2026:23231-1](https://patchblox.com/security/data/fix/linux/suse-su-2026-23231-1.md) | Aug 11, 2026 |
| Linux | kernel-obs-build opensuse-leap 16.0 | 6.12.0-160000.37.1 | [OPENSUSE-SU-2026:21555-1](https://patchblox.com/security/data/fix/linux/opensuse-su-2026-21555-1.md) | Aug 12, 2026 |
| Linux | kernel-obs-qa opensuse-leap 16.0 | 6.12.0-160000.37.1 | [OPENSUSE-SU-2026:21555-1](https://patchblox.com/security/data/fix/linux/opensuse-su-2026-21555-1.md) | Aug 12, 2026 |
| Linux | kernel-obs-qa sles 16.0 | 6.12.0-160000.37.1 | [SUSE-SU-2026:23231-1](https://patchblox.com/security/data/fix/linux/suse-su-2026-23231-1.md) | Aug 11, 2026 |
| Linux | kernel-rt opensuse-leap 16.0 | 6.12.0-160000.37.1 | [OPENSUSE-SU-2026:21555-1](https://patchblox.com/security/data/fix/linux/opensuse-su-2026-21555-1.md) | Aug 12, 2026 |
| Linux | kernel-source opensuse-leap 16.0 | 6.12.0-160000.37.1 | [OPENSUSE-SU-2026:21555-1](https://patchblox.com/security/data/fix/linux/opensuse-su-2026-21555-1.md) | Aug 12, 2026 |
| Linux | kernel-source sles 16.0 | 6.12.0-160000.37.1 | [SUSE-SU-2026:23231-1](https://patchblox.com/security/data/fix/linux/suse-su-2026-23231-1.md) | Aug 11, 2026 |
| Linux | kernel-syms opensuse-leap 16.0 | 6.12.0-160000.37.1 | [OPENSUSE-SU-2026:21555-1](https://patchblox.com/security/data/fix/linux/opensuse-su-2026-21555-1.md) | Aug 12, 2026 |
| Linux | kernel-syms sles 16.0 | 6.12.0-160000.37.1 | [SUSE-SU-2026:23231-1](https://patchblox.com/security/data/fix/linux/suse-su-2026-23231-1.md) | Aug 11, 2026 |
| Linux | kernel-zfcpdump opensuse-leap 16.0 | 6.12.0-160000.37.1 | [OPENSUSE-SU-2026:21555-1](https://patchblox.com/security/data/fix/linux/opensuse-su-2026-21555-1.md) | Aug 12, 2026 |
| Linux | kernel-zfcpdump sles 16.0 | 6.12.0-160000.37.1 | [SUSE-SU-2026:23231-1](https://patchblox.com/security/data/fix/linux/suse-su-2026-23231-1.md) | Aug 11, 2026 |
| Linux | linux Debian 13.5 (trixie) | 6.12.88-1 | [DEBIAN-CVE-2026-46287](https://patchblox.com/security/data/fix/linux/debian-cve-2026-46287.md) | Jun 24, 2026 |
| Linux | linux Debian 14 | 7.0.4-1 | [DEBIAN-CVE-2026-46287](https://patchblox.com/security/data/fix/linux/debian-cve-2026-46287.md) | Jun 24, 2026 |

---

Data as of 2026-11-08T19:12:23Z UTC. Source: Patchblox Patch Radar (https://patchblox.com/security/patch-radar). Patchblox finds out-of-date software on Windows, macOS and Linux and updates it through release rings: https://patchblox.com/demo

Free to use with attribution: show "Data: Patchblox Patch Radar" with a link to https://patchblox.com/security/patch-radar. Terms, including what needs a written agreement: https://patchblox.com/security/patch-radar/use-the-data

Product names, logos and trademarks shown on Patch Radar belong to their respective owners. They are used only to identify the software each security fix applies to and to help readers find their platform. Their use does not imply any affiliation with, or endorsement by, those owners, and Patchblox is not affiliated with any of them.
