PT-2026-61287 · Linux · Linux

CVE-2026-63970

·

Published

2026-07-19

·

Updated

2026-07-19

CVSS v3.1

7.8

High

VectorAV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
In the Linux kernel, the following vulnerability has been resolved:
vsock/virtio: bind uarg before filling zerocopy skb
virtio transport send pkt info() allocates or reuses the zerocopy uarg before entering the send loop, but virtio transport alloc skb() still fills the skb before it inherits that uarg. When fixed-buffer vectored zerocopy hits MAX SKB FRAGS, io sg from iter() may partially attach managed frags and return -EMSGSIZE. The rollback path call kfree skb() to free an skb that carries SKBFL MANAGED FRAG REFS but no uarg, so skb release data() falls through to ordinary frag unref.
Pass the uarg into virtio transport alloc skb() and bind it immediately before virtio transport fill skb(). This keeps control or no-payload skbs untouched while ensuring success and rollback share one lifetime rule.

Fix

Found an issue in the description? Have something to add? Feel free to write us 👾

Related Identifiers

CVE-2026-63970

Affected Products

Linux