Re: [PATCH 1/3] Add TX sending hardware timestamp.

From: Geva, Erez
Date: Wed Dec 09 2020 - 10:22:54 EST



On 09/12/2020 15:48, Willem de Bruijn wrote:
> On Wed, Dec 9, 2020 at 9:37 AM Erez Geva <erez.geva.ext@xxxxxxxxxxx> wrote:
>>
>> Configure and send TX sending hardware timestamp from
>> user space application to the socket layer,
>> to provide to the TC ETC Qdisc, and pass it to
>> the interface network driver.
>>
>> - New flag for the SO_TXTIME socket option.
>> - New access auxiliary data header to pass the
>> TX sending hardware timestamp.
>> - Add the hardware timestamp to the socket cookie.
>> - Copy the TX sending hardware timestamp to the socket cookie.
>>
>> Signed-off-by: Erez Geva <erez.geva.ext@xxxxxxxxxxx>
>
> Hardware offload of pacing is definitely useful.
>
Thanks for your comment.
I agree, it is not limited of use.

> I don't think this needs a new separate h/w variant of SO_TXTIME.
>
I only extend SO_TXTIME.

> Indeed, we want pacing offload to work for existing applications.
>
As the conversion of the PHC and the system clock is dynamic over time.
How do you propse to achive it?

> It only requires that pacing qdiscs, both sch_etf and sch_fq,
> optionally skip queuing in their .enqueue callback and instead allow
> the skb to pass to the device driver as is, with skb->tstamp set. Only
> to devices that advertise support for h/w pacing offload.
>
I did not use "Fair Queue traffic policing".
As for ETF, it is all about ordering packets from different applications.
How can we achive it with skiping queuing?
Could you elaborate on this point?

Thanks
Erez