GPU VulnDB

Database/Kernel, userspace & hypervisor

Linux kernel nvme-tcp (admin tag set leak on secure-concatenation setup failure): After the change that reconnects the

CVSS 7.8CVE-2025-38209Kernel, userspace & hypervisorcurated

Impact

After the change that reconnects the admin queue for NVMe-TCP secure concatenation, nvme_tcp_setup_ctrl() configures the admin queue twice. When the second attempt fails it skips nvme_remove_admin_tag_set(), yet the caller goes on to free the nvme_tcp_ctrl structure that embeds that tag set. The block-layer timeout handler then walks freed memory - a KASAN slab-use-after-free in blk_mq_queue_tag_busy_iter(), reproducible by repeating blktests nvme/063. For operators who front GPU nodes with NVMe over TCP, this sits in the connection-setup path: a storage target that is reachable but fails DH-CHAP or TLS negotiation drives the host into a use-after-free, and repeated reconnect attempts to a flapping or hostile target turn that into a repeatable host-kernel corruption. Nodes that do not use NVMe-TCP with authentication or secure concatenation never enter the affected path.

Who can reach it

Local privilege is needed to initiate an NVMe-TCP connection, but the failure that triggers the bug is decided by the remote target: anything that makes the second admin queue allocation fail (an unreachable, misbehaving, or authentication-rejecting target on the storage network) is enough. Exposure therefore depends on who can stand up or impersonate an NVMe-TCP target on the storage VLAN.

What to do

Update to a stable kernel that jumps to the destroy_admin path on the second failure (two backports linked). Drain and reboot each node that mounts NVMe-TCP namespaces. Until then, limit which targets hosts will connect to and avoid automated reconnect loops against targets failing authentication; there is no runtime toggle that removes the bug itself.

References

Related entries

All Kernel, userspace & hypervisor entries

This entry is curated: imported from vendor advisories with machine assistance, not yet individually verified. Confirm against your vendor's advisory before acting, and report anything wrong.