mirror of
https://github.com/torvalds/linux.git
synced 2026-10-17 06:20:02 +02:00
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.
Fixes:
|
||
|---|---|---|
| .. | ||
| igc_base.c | ||
| igc_base.h | ||
| igc_defines.h | ||
| igc_diag.c | ||
| igc_diag.h | ||
| igc_dump.c | ||
| igc_ethtool.c | ||
| igc_hw.h | ||
| igc_i225.c | ||
| igc_i225.h | ||
| igc_leds.c | ||
| igc_mac.c | ||
| igc_mac.h | ||
| igc_main.c | ||
| igc_nvm.c | ||
| igc_nvm.h | ||
| igc_phy.c | ||
| igc_phy.h | ||
| igc_ptp.c | ||
| igc_regs.h | ||
| igc_tsn.c | ||
| igc_tsn.h | ||
| igc_xdp.c | ||
| igc_xdp.h | ||
| igc.h | ||
| Makefile | ||