[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <d1c18889-ef48-4cb8-8b81-474b3b7ddd81@linux.dev>
Date: Tue, 28 May 2024 12:30:37 -0700
From: Martin KaFai Lau <martin.lau@...ux.dev>
To: Willem de Bruijn <willemdebruijn.kernel@...il.com>,
"Abhishek Chauhan (ABC)" <quic_abchauha@...cinc.com>
Cc: kernel@...cinc.com, Willem de Bruijn <willemb@...gle.com>,
"David S. Miller" <davem@...emloft.net>, Eric Dumazet <edumazet@...gle.com>,
Jakub Kicinski <kuba@...nel.org>, Paolo Abeni <pabeni@...hat.com>,
netdev@...r.kernel.org, linux-kernel@...r.kernel.org,
Andrew Halaney <ahalaney@...hat.com>,
Martin KaFai Lau <martin.lau@...nel.org>,
Daniel Borkmann <daniel@...earbox.net>, bpf <bpf@...r.kernel.org>
Subject: Re: [PATCH bpf-next v8 1/3] net: Rename mono_delivery_time to
tstamp_type for scalabilty
On 5/28/24 10:24 AM, Willem de Bruijn wrote:
> Abhishek Chauhan (ABC) wrote:
>
>>> +static inline void skb_set_delivery_type_by_clockid(struct sk_buff *skb,
>>> + ktime_t kt, clockid_t clockid)
>>> +{
>>> + u8 tstamp_type = SKB_CLOCK_REALTIME;
>>> +
>>> + switch (clockid) {
>>> + case CLOCK_REALTIME:
>>> + break;
>>> + case CLOCK_MONOTONIC:
>>> + tstamp_type = SKB_CLOCK_MONOTONIC;
>>> + break;
>>> + default:
>>
>> Willem and Martin, I was thinking we should remove this warn_on_once from below line. Some systems also use panic on warn.
>> So i think this might result in unnecessary crashes.
>>
>> Let me know what you think.
>>
>> Logs which are complaining.
>> https://syzkaller.appspot.com/x/log.txt?x=118c3ae8980000
>
> I received reports too. Agreed that we need to fix these reports.
>
> The alternative is to limit sk_clockid to supported ones, by failing
> setsockopt SO_TXTIME on an unsupported clock.
>
> That changes established ABI behavior. But I don't see how another
> clock can be used in any realistic way anyway.
>
> Putting it out there as an option. It's riskier, but in the end I
> believe a better fix than just allowing this state to continue.
Failing early would be my preference also. The current ABI is arguably at least
confusing (if not broken) considering other clockid is silently ignored by the
kernel.
>
> A third option would be to not fail the system call, but silently
> fall back to CLOCK_REALTIME. Essentially what happens in the datapath
> in skb_set_delivery_type_by_clockid now. That is surprising behavior,
> we should not do that.
Not sure if it makes sense to go back to this option only after there is
breakage report with a legit usage?
Powered by blists - more mailing lists