Skip to content
CVE PROGRAM SOURCE RECORD7.8 High

CVE-2026-90051

tcp: reject non zerocopy devmem tx

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.

Affected products

Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.

Linux Linux

Default version status: unaffected

  • bd61848900bff597764238f3a8ec67c815cd316e to < 2151b2bcf6fcec52665f606eed20da068447f0b7affected
  • bd61848900bff597764238f3a8ec67c815cd316e to < b04326c7927af7048fd4e730f5770cca350d0a60affected
  • bd61848900bff597764238f3a8ec67c815cd316e to < 125755776bc6d4dd53eaf551c87e3d460625d638affected

Linux Linux

Default version status: affected

  • 6.16affected
  • 0 to < 6.16unaffected
  • 6.18.52 to ≤ 6.18.*unaffected
  • 7.2.6 to ≤ 7.2.*unaffected
  • 7.3 to ≤ *unaffected

References