UBUNTU-CVE-2026-89972: Critical severity ubuntu/linux-azure vulnerability
In the Linux kernel, the following vulnerability has been resolved: nvme: add missing SRCU grace period in error path nvmeallocns() error path at outunlinkns removes ns from the namespace head siblings list with listdelrcu(&ns->siblings) but does not wait for SRCU readers before freeing the namespace struct. Multipath code iterates the head->list under srcureadlock() in nvmefindpath() and nvmempathrevalidatepaths(), so a concurrent reader can still hold a reference to ns when kfree(ns) runs. The normal removal path in nvmensremove() correctly calls synchronizesrcu(&ns->head->srcu) after listdelrcu() to wait for in-progress readers. Add the same grace period in the error path.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
ubuntu/linux-hwe-7.0to a version that resolves this vulnerability.Fixed in 7.0.0-42.42~24.04.1 - Upgrade
Upgrade
ubuntu/linux-riscv-7.0to a version that resolves this vulnerability.Fixed in 7.0.0-42.42.1~24.04.1 - Upgrade
Upgrade
ubuntu/linuxto a version that resolves this vulnerability.Fixed in 7.0.0-42.42 - Upgrade
Upgrade
ubuntu/linux-awsto a version that resolves this vulnerability.Fixed in 7.0.0-1016.17 - Upgrade
Upgrade
ubuntu/linux-gcpto a version that resolves this vulnerability.Fixed in 7.0.0-1016.18 - Upgrade
Upgrade
ubuntu/linux-ibmto a version that resolves this vulnerability.Fixed in 7.0.0-1017.17 - Upgrade
Upgrade
ubuntu/linux-oem-7.0to a version that resolves this vulnerability.Fixed in 7.0.0-1017.17 - Upgrade
Upgrade
ubuntu/linux-oracleto a version that resolves this vulnerability.Fixed in 7.0.0-1015.16 - Upgrade
Upgrade
ubuntu/linux-riscvto a version that resolves this vulnerability.Fixed in 7.0.0-42.42.1 - Compensating control
In the nvme_alloc_ns() error path at out_unlink_ns, call synchronize_srcu(&ns->head->srcu) after list_del_rcu(&ns->siblings) and before freeing the namespace structure.