CVE-2026-80987: NTB: ntb_transport: Reject oversized TX buffers
In the Linux kernel, the following vulnerability has been resolved:
NTB: ntbtransport: Reject oversized TX buffers
ntbprocesstx() handles an oversized buffer by calling txhandler() with a NULL data pointer and returning success. ntbnetdev therefore neither frees the skb in its completion callback nor takes its enqueue error path, leaking it.
Reject oversized buffers in ntbtransporttxenqueue() before acquiring a queue entry and return -EMSGSIZE. The caller retains ownership of the buffer, and the preceding netdev patch frees the skb when enqueue returns this permanent error.
Affected Software
Event History
Frequently Asked Questions
Which systems are exposed to the described memory leak?
The described leak occurs when ntb_netdev uses ntb_transport and an oversized transmit buffer is processed. In that path, ntb_netdev neither frees the skb through its completion callback nor follows its enqueue-error cleanup path.
What input condition triggers the issue?
An oversized TX buffer must be submitted through ntb_transport. Previously, the buffer could be handled with a NULL data pointer while the enqueue operation still reported success, causing ownership and cleanup to be lost.
What behavior should callers expect after the fix?
Oversized buffers are rejected by ntb_transport_tx_enqueue() before a queue entry is acquired, with -EMSGSIZE returned. The caller retains ownership of the buffer; the referenced netdev change frees the skb when this permanent enqueue error is returned.