CVE-2026-93096 cxl/features: Serialize multi-part Get/Set Feature transfers

Not scored Published Updated

A race condition in the Linux kernel CXL feature handling allows concurrent transfers to corrupt device state, potentially causing denial of service or data corruption.

Exploited in the wild
Not known
Login needed
Any signed-in user
Attackable
Local or same network only
Victim action needed
Not needed
Fix
Available

What is CVE-2026-93096?

CVE-2026-93096 is a vulnerability in Linux, published on 17 Sep 2026. It can only be exploited from the same machine or local network, with no action from the victim.

Official description

In the Linux kernel, the following vulnerability has been resolved:

cxl/features: Serialize multi-part Get/Set Feature transfers

A Get or Set Feature payload larger than the mailbox payload size is split into several mailbox commands. mbox_mutex only serializes individual mailbox commands and is dropped between iterations of these loops. Nothing serializes the multi-part transfer as a whole. cxl_get_feature() and cxl_set_feature() are reachable concurrently from fwctl (per-fd RPCs run under a read-held registration lock) and from the EDAC scrub/ECS/repair paths, so two transfers to the same mailbox can interleave their parts and corrupt the device's transfer context.

Add a per-mailbox feat_mutex and hold it across the whole transfer in both functions. It nests outside mbox_mutex (which is taken inside cxl_internal_send_cmd()), and is taken nowhere else, so no lock-ordering inversion is introduced.

Which versions are affected by CVE-2026-93096?

How do I fix CVE-2026-93096?

Apply the vendor's patch.

Is CVE-2026-93096 being exploited?

There is no known exploitation of CVE-2026-93096 in the wild and no public exploit code.

Sources

Also known as BELL-CVE-2026-93096, DEBIAN-CVE-2026-93096, GHSA-gqcj-fh23-47rq, UBUNTU-CVE-2026-93096.

Is CVE-2026-93096 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free