What’s Vulnerable › Vulnerabilities
CVE-2026-99043: ice: fix metadata_dst refcount handling on representor teardown
- Severity: unknown
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.2% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2026-10-23 · updated 2026-10-30
Description
In the Linux kernel, the following vulnerability has been resolved: ice: fix metadata_dst refcount handling on representor teardown ice_eswitch_release_repr() uses metadata_dst_free() to release the representor's metadata_dst. metadata_dst_free() directly frees the underlying memory without checking the dst_entry refcount. When ice_eswitch_port_start_xmit() processes a packet, it takes a reference via dst_hold() and attaches the metadata_dst to the skb. If the representor is torn down while packets are still queued on the lower device (e.g. in a qdisc), the metadata_dst is freed while references are still held. Use dst_release() instead, which correctly decrements the refcount and only frees the object when all references are dropped. The dst subsystem already handles metadata_dst cleanup in dst_destroy() when DST_METADATA is set. Other drivers sharing this pattern (nfp, airoha, bnxt) already use dst_release() for their metadata_dst lifecycle.
Affected products
- Linux: 5.16 — fixed in 7.3
How to fix
Upgrade to a fixed version: Linux 7.3. Check the vendor advisory for mitigations.
References
- https://git.kernel.org/stable/c/1f263235651775f93c15d90c9f25c3f4a4ef6512
- https://git.kernel.org/stable/c/41f0d9ab158fb51f34bded5f8a40918e4f70b2b6
- https://git.kernel.org/stable/c/58858b8f14803a7eeac297b3ce20f3b21bf2ff66
- https://git.kernel.org/stable/c/5e4d20db5179e83a4948927bc39e489a9a83256d
- https://git.kernel.org/stable/c/6f5544f53f1e58ea8a49fb9f9158d5793b9205b0
- https://git.kernel.org/stable/c/beb05f484a1e4a5a66e3678e4b7f3147f651c080
Get alerted when CVE-2026-99043 or the next vulnerability affects your stack