This series is split out of [1] following discussion with Jakub. To copy XDP metadata into an skb extension when skb_metadata_set() is called, we need to locate the metadata contents.
These patches establish a contract with the drivers: skb_metadata_set() must be called only after skb->data has been advanced past the metadata area. [1] https://lore.kernel.org/r/20260107-skb-meta-safeproof-netdevs-rx-only-v3-0-0d461c5e4...@cloudflare.com Signed-off-by: Jakub Sitnicki <[email protected]> --- Jakub Sitnicki (10): net: Document skb_metadata_set contract with the drivers bnxt_en: Call skb_metadata_set when skb->data points past metadata i40e: Call skb_metadata_set when skb->data points past metadata igb: Call skb_metadata_set when skb->data points past metadata igc: Call skb_metadata_set when skb->data points past metadata ixgbe: Call skb_metadata_set when skb->data points past metadata mlx5e: Call skb_metadata_set when skb->data points past metadata veth: Call skb_metadata_set when skb->data points past metadata xsk: Call skb_metadata_set when skb->data points past metadata xdp: Call skb_metadata_set when skb->data points past metadata drivers/net/ethernet/broadcom/bnxt/bnxt.c | 2 +- drivers/net/ethernet/intel/i40e/i40e_xsk.c | 2 +- drivers/net/ethernet/intel/igb/igb_xsk.c | 2 +- drivers/net/ethernet/intel/igc/igc_main.c | 4 ++-- drivers/net/ethernet/intel/ixgbe/ixgbe_xsk.c | 2 +- drivers/net/ethernet/mellanox/mlx5/core/en/xsk/rx.c | 2 +- drivers/net/veth.c | 4 ++-- include/linux/skbuff.h | 7 +++++++ net/core/dev.c | 5 ++++- net/core/xdp.c | 2 +- 10 files changed, 21 insertions(+), 11 deletions(-)
