[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <e6f2c489-85a9-436e-8d05-4b3063c133fd@linux.dev>
Date: Mon, 10 Feb 2025 14:39:44 -0800
From: Martin KaFai Lau <martin.lau@...ux.dev>
To: Jason Xing <kerneljasonxing@...il.com>,
Willem de Bruijn <willemdebruijn.kernel@...il.com>
Cc: davem@...emloft.net, edumazet@...gle.com, kuba@...nel.org,
pabeni@...hat.com, dsahern@...nel.org, willemb@...gle.com, ast@...nel.org,
daniel@...earbox.net, andrii@...nel.org, eddyz87@...il.com, song@...nel.org,
yonghong.song@...ux.dev, john.fastabend@...il.com, kpsingh@...nel.org,
sdf@...ichev.me, haoluo@...gle.com, jolsa@...nel.org, horms@...nel.org,
bpf@...r.kernel.org, netdev@...r.kernel.org
Subject: Re: [PATCH bpf-next v8 08/12] bpf: support hw SCM_TSTAMP_SND of
SO_TIMESTAMPING
On 2/5/25 8:03 AM, Jason Xing wrote:
>>> @@ -5574,9 +5575,9 @@ static void skb_tstamp_tx_bpf(struct sk_buff *skb, struct sock *sk,
>>> op = BPF_SOCK_OPS_TS_SCHED_OPT_CB;
>>> break;
>>> case SCM_TSTAMP_SND:
>>> - if (!sw)
>>> - return;
>>> - op = BPF_SOCK_OPS_TS_SW_OPT_CB;
>>> + op = sw ? BPF_SOCK_OPS_TS_SW_OPT_CB : BPF_SOCK_OPS_TS_HW_OPT_CB;
>>> + if (!sw && hwtstamps)
>>> + *skb_hwtstamps(skb) = *hwtstamps;
>> Isn't this called by drivers that have actually set skb_hwtstamps?
> Oops, somehow my mind has gone blank 🙁 Will remove it. Thanks for
> correcting me!
I just noticed I missed this thread when reviewing v9.
I looked at a few drivers, e.g. the mlx5e_consume_skb(). It does not necessarily
set the skb_hwtstamps(skb) before calling skb_tstamp_tx(). The __skb_tstamp_tx()
is also setting skb_hwtstamps(skb) after testing "if (hwtstamps)", so I think
this assignment is still needed here?
Powered by blists - more mailing lists