← Back to CVE List
CVE-2026-90086NVD
Vulnerability Summary
In the Linux kernel, the following vulnerability has been resolved:
xsk: honor XDP_TX_METADATA in zero-copy path
The zero-copy path reads TX metadata whenever the UMEM has metadata space,
even if the descriptor does not set XDP_TX_METADATA. Pass descriptor
options through the metadata helpers and ignore metadata unless the option
is set.
This does not fix the existing per-WQE metadata handling for mlx5 MPWQEs.
Only the descriptor that starts a session passes through
xsk_tx_metadata_request() and configures offload state shared by the batch.
Metadata on descriptors joining an open session is therefore not validated
and does not configure its requested offloads. In addition, a non-NULL
metadata pointer from such a descriptor is treated as a timestamp
completion request even when XDP_TXMD_FLAGS_TIMESTAMP is not set, so its
metadata union can be overwritten with an unrequested timestamp. Fixing
mixed metadata states within one MPWQE requires a separate change.
xsk: honor XDP_TX_METADATA in zero-copy path
The zero-copy path reads TX metadata whenever the UMEM has metadata space,
even if the descriptor does not set XDP_TX_METADATA. Pass descriptor
options through the metadata helpers and ignore metadata unless the option
is set.
This does not fix the existing per-WQE metadata handling for mlx5 MPWQEs.
Only the descriptor that starts a session passes through
xsk_tx_metadata_request() and configures offload state shared by the batch.
Metadata on descriptors joining an open session is therefore not validated
and does not configure its requested offloads. In addition, a non-NULL
metadata pointer from such a descriptor is treated as a timestamp
completion request even when XDP_TXMD_FLAGS_TIMESTAMP is not set, so its
metadata union can be overwritten with an unrequested timestamp. Fixing
mixed metadata states within one MPWQE requires a separate change.
Affected & Patched Versions
- Linux Linux >= 48eb03dd26304c24f03bdbb9382e89c8564e71df and < 53a5b262d706b572840cbe8feae392538077ee19
- Linux Linux >= 48eb03dd26304c24f03bdbb9382e89c8564e71df and < bf9387488d6394845076928c6ca5315ce5d84f54
- Linux Linux >= 48eb03dd26304c24f03bdbb9382e89c8564e71df and < a6e4b9a6deb9362ef7a0706c70d674e92fe1411a
- Linux Linux >= 6.8
- Linux Linux 53a5b262d706b572840cbe8feae392538077ee19
- Linux Linux bf9387488d6394845076928c6ca5315ce5d84f54
- Linux Linux a6e4b9a6deb9362ef7a0706c70d674e92fe1411a