diff options
author | Stanislav Fomichev <sdf@google.com> | 2024-03-18 17:54:27 +0100 |
---|---|---|
committer | Daniel Borkmann <daniel@iogearbox.net> | 2024-03-19 13:47:29 +0100 |
commit | f6e922365faf4cd576bd1cf3e64b58c8a32e1856 (patch) | |
tree | c372a3f31a8e6f41af1bcd51c6187805f8da8503 | |
parent | Merge branch 'bpf-arena-followups' (diff) | |
download | linux-f6e922365faf4cd576bd1cf3e64b58c8a32e1856.tar.xz linux-f6e922365faf4cd576bd1cf3e64b58c8a32e1856.zip |
xsk: Don't assume metadata is always requested in TX completion
`compl->tx_timestam != NULL` means that the user has explicitly
requested the metadata via XDP_TX_METADATA+XDP_TX_METADATA_TIMESTAMP.
Fixes: 48eb03dd2630 ("xsk: Add TX timestamp and TX checksum offload support")
Reported-by: Daniele Salvatore Albano <d.albano@gmail.com>
Signed-off-by: Stanislav Fomichev <sdf@google.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Tested-by: Daniele Salvatore Albano <d.albano@gmail.com>
Link: https://lore.kernel.org/bpf/20240318165427.1403313-1-sdf@google.com
-rw-r--r-- | include/net/xdp_sock.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/net/xdp_sock.h b/include/net/xdp_sock.h index 3cb4dc9bd70e..3d54de168a6d 100644 --- a/include/net/xdp_sock.h +++ b/include/net/xdp_sock.h @@ -188,6 +188,8 @@ static inline void xsk_tx_metadata_complete(struct xsk_tx_metadata_compl *compl, { if (!compl) return; + if (!compl->tx_timestamp) + return; *compl->tx_timestamp = ops->tmo_fill_timestamp(priv); } |