7.4
/ 10
HIGH
CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:C/C:N/I:N/A:H
Description
In the Linux kernel, the following vulnerability has been resolved:
tap: free page on error paths in tap_get_user_xdp()
tap_get_user_xdp() rejects a frame shorter than ETH_HLEN with -EINVAL,
and returns -ENOMEM when build_skb() fails. Both paths jump to the err
label without freeing the page that vhost_net_build_xdp() allocated for
the frame. tap_sendmsg() discards the per-buffer return value and always
returns 0, so vhost_tx_batch() takes the success path and never frees
the page; each rejected frame in a batch leaks one page-frag chunk.
Free the page on both error paths, before the skb is built. This is the
tap counterpart of the same leak in tun_xdp_one().
tap: free page on error paths in tap_get_user_xdp()
tap_get_user_xdp() rejects a frame shorter than ETH_HLEN with -EINVAL,
and returns -ENOMEM when build_skb() fails. Both paths jump to the err
label without freeing the page that vhost_net_build_xdp() allocated for
the frame. tap_sendmsg() discards the per-buffer return value and always
returns 0, so vhost_tx_batch() takes the success path and never frees
the page; each rejected frame in a batch leaks one page-frag chunk.
Free the page on both error paths, before the skb is built. This is the
tap counterpart of the same leak in tun_xdp_one().
Basic Information
ID
CVE-2026-46320
Source
Linux
Published
Jun 9, 2026 at 12:11
Modified
Jun 14, 2026 at 04:30
Affected Product
Vendor
Linux
Product
Linux
Version
0efac27791ee068075d80f07c55a229b1335ce12
Affected Versions
Linux Linux 0efac27791ee068075d80f07c55a229b1335ce12
Linux Linux 0efac27791ee068075d80f07c55a229b1335ce12
Linux Linux 4.20
Linux Linux 0efac27791ee068075d80f07c55a229b1335ce12
Linux Linux 4.20