CVE-2026-31579
In the Linux kernel, the following vulnerability has been resolved: wireguard: device: use exit_rtnl callback instead of manual rtnl_lock in pre_exit wg_netns_pre_exit() manually acquires rtnl_lock() inside the pernet .pre_exit callback. This causes a hung task when another thread holds rtnl_mutex - the cleanup_net workqueue (or the setup_net failure rollback path) blocks indefinitely in wg_netns_pre_exit() waiting to acquire the lock. Convert to .exit_rtnl, introduced in commit 7a60d91c690b ("net: Add ->exit_rtnl() hook to struct pernet_operations."), where the framework already holds RTNL and batches all callbacks under a single rtnl_lock()/rtnl_unlock() pair, eliminating the contention window. The rcu_assign_pointer(wg->creating_net, NULL) is safe to move from .pre_exit to .exit_rtnl (which runs after synchronize_rcu()) because all RCU readers of creating_net either use maybe_get_net() - which returns NULL for a dying namespace with zero refcount - or access net->user_ns which remains valid throughout the entire ops_undo_list sequence. [ Jason: added __net_exit and __read_mostly annotations that were missing. ]
EPSS 0.01% · 2.7th percentile
Risk Scores
Affected Products
| Vendor | Product | Versions |
|---|---|---|
| Linux | Linux | 7.0.1, 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2, 6.18.24 |
| linux | linux_kernel | 0, 0, 0 |
Timeline
- Apr 24, 2026 CVE Published
- Apr 24, 2026 Security Advisory
- Apr 27, 2026 CVE Updated
- May 18, 2026 EPSS Score
- May 19, 2026 EPSS Score
- May 20, 2026 EPSS Score
- May 21, 2026 EPSS Score
- May 22, 2026 EPSS Score
- May 23, 2026 EPSS Score
- May 24, 2026 EPSS Score
- May 25, 2026 EPSS Score
- May 26, 2026 EPSS Score
References
- https://git.kernel.org/stable/c/9a9e69155b2091b8297afaf1533b8d68a3096841 url
- https://git.kernel.org/stable/c/1c52ef00e391144334f10995985c2f256d4be982 url
- https://git.kernel.org/stable/c/a1d0f6cbb962af29586e3e65a4bced1a5e39221f url
- https://nvd.nist.gov/vuln/detail/CVE-2026-31579 advisory
- https://www.suse.com/support/update/announcement/2026/suse-su-202621930-1 advisory
- https://www.suse.com/support/update/announcement/2026/suse-su-202621841-1 advisory
- https://www.suse.com/support/update/announcement/2026/suse-su-20262238-1 advisory
- https://www.suse.com/support/update/announcement/2026/suse-su-202621974-1 advisory
- https://www.suse.com/support/update/announcement/2026/suse-su-20262217-1 advisory
- https://www.suse.com/support/update/announcement/2026/suse-su-202621979-1 advisory
- https://www.suse.com/support/update/announcement/2026/suse-su-20262149-1 advisory
- https://www.suse.com/support/update/announcement/2026/suse-su-20262158-1 advisory
- https://www.suse.com/support/update/announcement/2026/suse-su-202621973-1 advisory
- https://www.suse.com/support/update/announcement/2026/suse-su-20262189-1 advisory
- https://www.suse.com/support/update/announcement/2026/suse-su-20262159-1 advisory
- https://www.suse.com/support/update/announcement/2026/suse-su-202621942-1 advisory
- https://www.suse.com/support/update/announcement/2026/suse-su-202621964-1 advisory
- https://www.suse.com/support/update/announcement/2026/suse-su-202621939-1 advisory
- https://www.suse.com/support/update/announcement/2026/suse-su-20262202-1 advisory
- https://www.suse.com/support/update/announcement/2026/suse-su-202621910-1 advisory
…and 47 more