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

From: Willem de Bruijn
Date: Wed Dec 09 2020 - 09:50:53 EST


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.

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

Indeed, we want pacing offload to work for existing applications.

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.