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. ]
Configurations

Configuration 1 (hide)

OR cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*

History

27 Apr 2026, 20:43

Type Values Removed Values Added
CPE cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
First Time Linux
Linux linux Kernel
CWE CWE-476
CVSS v2 : unknown
v3 : unknown
v2 : unknown
v3 : 5.5
References () https://git.kernel.org/stable/c/1c52ef00e391144334f10995985c2f256d4be982 - () https://git.kernel.org/stable/c/1c52ef00e391144334f10995985c2f256d4be982 - Patch
References () https://git.kernel.org/stable/c/60a25ef8dacb3566b1a8c4de00572a498e2a3bf9 - () https://git.kernel.org/stable/c/60a25ef8dacb3566b1a8c4de00572a498e2a3bf9 - Patch
References () https://git.kernel.org/stable/c/9a9e69155b2091b8297afaf1533b8d68a3096841 - () https://git.kernel.org/stable/c/9a9e69155b2091b8297afaf1533b8d68a3096841 - Patch
References () https://git.kernel.org/stable/c/a1d0f6cbb962af29586e3e65a4bced1a5e39221f - () https://git.kernel.org/stable/c/a1d0f6cbb962af29586e3e65a4bced1a5e39221f - Patch

27 Apr 2026, 12:16

Type Values Removed Values Added
References
  • () https://git.kernel.org/stable/c/60a25ef8dacb3566b1a8c4de00572a498e2a3bf9 -

24 Apr 2026, 15:16

Type Values Removed Values Added
New CVE

Information

Published : 2026-04-24 15:16

Updated : 2026-04-27 20:43


NVD link : CVE-2026-31579

Mitre link : CVE-2026-31579

CVE.ORG link : CVE-2026-31579


JSON object : View

Products Affected

linux

  • linux_kernel
CWE
CWE-476

NULL Pointer Dereference