CVE-2026-90051 tcp: reject non zerocopy devmem tx

High 7.8 Published Updated

Attackers can trigger kernel invariants violations and potential crashes by sending TCP data with devmem bindings without zero-copy enabled.

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-90051?

CVE-2026-90051 is a high-severity 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:

tcp: reject non zerocopy devmem tx

Devmem tcp tx doesn't work without zero-copy, however it's not currently enforced if NETIF_F_SG isn't present. In this case, tcp_sendmsg_locked() will try the copy path and try to copy data from an iovec which consists of offsets into the dma-buf and would normally fail. Moreover, d9c56501c72fd ("net: tcp: block mixing readable and unreadable frags") relies on that and assumes that the devmem binding is present IFF we're using the zero-copy path, which can be used to mix net-iov and pages in a single skb, and break invariants. Let's reject devmem tx without zero-copy.

Note, the parameter check the patch is modifying is too loose, we can create an io_uring request with dmabuf_id and all ZC flags, but which won't have the binding. We replace it with stricter validation.

Which versions are affected by CVE-2026-90051?

How do I fix CVE-2026-90051?

Apply the vendor's patch.

Is CVE-2026-90051 being exploited?

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

Sources

Also known as BELL-CVE-2026-90051, DEBIAN-CVE-2026-90051, GHSA-8gg6-pfjx-8vr5, UBUNTU-CVE-2026-90051.

Is CVE-2026-90051 in your software?

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

Check your SBOMs for free