7.8
/ 10
HIGH
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Description
In the Linux kernel, the following vulnerability has been resolved:
xfrm: Wait for RCU readers during policy netns exit
xfrm_policy_fini() frees the policy_bydst hash tables after flushing the
policy work items and deleting all policies, but it does not wait for
concurrent RCU readers to leave their read-side critical sections first.
The policy_bydst tables are published via rcu_assign_pointer() and are
looked up through rcu_dereference_check(), so netns teardown must also
wait for an RCU grace period before freeing the table memory.
Fix this by adding synchronize_rcu() before freeing the policy hash tables.
xfrm: Wait for RCU readers during policy netns exit
xfrm_policy_fini() frees the policy_bydst hash tables after flushing the
policy work items and deleting all policies, but it does not wait for
concurrent RCU readers to leave their read-side critical sections first.
The policy_bydst tables are published via rcu_assign_pointer() and are
looked up through rcu_dereference_check(), so netns teardown must also
wait for an RCU grace period before freeing the table memory.
Fix this by adding synchronize_rcu() before freeing the policy hash tables.
Basic Information
ID
CVE-2026-43091
Source
Linux
Published
May 6, 2026 at 07:40
Modified
May 8, 2026 at 12:40
Affected Product
Vendor
Linux
Product
Linux
Version
e1e551bc56302b80ff930c966f9985095fb1b70d
Affected Versions
Linux Linux e1e551bc56302b80ff930c966f9985095fb1b70d
Linux Linux e1e551bc56302b80ff930c966f9985095fb1b70d
Linux Linux e1e551bc56302b80ff930c966f9985095fb1b70d
Linux Linux e1e551bc56302b80ff930c966f9985095fb1b70d
Linux Linux e1e551bc56302b80ff930c966f9985095fb1b70d
Linux Linux 4.9
Linux Linux e1e551bc56302b80ff930c966f9985095fb1b70d
Linux Linux e1e551bc56302b80ff930c966f9985095fb1b70d
Linux Linux e1e551bc56302b80ff930c966f9985095fb1b70d
Linux Linux e1e551bc56302b80ff930c966f9985095fb1b70d
Linux Linux 4.9
References
- git.kernel.org /stable/c/b66920a3348c0f63ba18365248fa21fbf0b3a937
- git.kernel.org /stable/c/438b1f668ad58f46ce699bb48e4698a7839e3f9e
- git.kernel.org /stable/c/3733fce2871c9bca9dd18a1a23b1432ea215a094
- git.kernel.org /stable/c/33a3149dd81a1e2f52b80ee1e0fc380b39f3d028
- git.kernel.org /stable/c/069daad4f2ae9c5c108131995529d5f02392c446