[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ZMKdUbsAGe318yCS@google.com>
Date: Thu, 27 Jul 2023 09:37:37 -0700
From: Stanislav Fomichev <sdf@...gle.com>
To: Jesper Dangaard Brouer <jbrouer@...hat.com>
Cc: Willem de Bruijn <willemdebruijn.kernel@...il.com>, brouer@...hat.com, bpf@...r.kernel.org,
ast@...nel.org, daniel@...earbox.net, andrii@...nel.org, martin.lau@...ux.dev,
song@...nel.org, yhs@...com, john.fastabend@...il.com, kpsingh@...nel.org,
haoluo@...gle.com, jolsa@...nel.org, kuba@...nel.org, toke@...nel.org,
willemb@...gle.com, dsahern@...nel.org, magnus.karlsson@...el.com,
bjorn@...nel.org, maciej.fijalkowski@...el.com, hawk@...nel.org,
netdev@...r.kernel.org, xdp-hints@...-project.net
Subject: Re: [RFC net-next v4 2/8] xsk: add TX timestamp and TX checksum
offload support
On 07/27, Jesper Dangaard Brouer wrote:
>
> On 26/07/2023 01.10, Willem de Bruijn wrote:
> > Stanislav Fomichev wrote:
> > > On 07/25, Willem de Bruijn wrote:
> > > > Stanislav Fomichev wrote:
> [...]
> > > > > +struct xsk_tx_metadata {
> > > > > + __u32 flags;
> > > > > +
> > > > > + /* XDP_TX_METADATA_CHECKSUM */
> > > > > +
> > > > > + /* Offset from desc->addr where checksumming should start. */
> > > > > + __u16 csum_start;
> > > > > + /* Offset from csum_start where checksum should be stored. */
> > > > > + __u16 csum_offset;
> > > > > +
> > > > > + /* XDP_TX_METADATA_TIMESTAMP */
> > > > > +
> > > > > + __u64 tx_timestamp;
> > > > > +};
> >>>
> > > > Is this structure easily extensible for future offloads,
> [...]
> >
> > Pacing offload is the other feature that comes to mind. That could
> > conceivably use the tx_timestamp field.
>
> I would really like to see hardware offload "pacing" or LaunchTime as
> hardware chips i210 and i225 calls it. I looked at the TX descriptor
> details for drivers igc (i225) and igb (i210), and documented my finding
> here[1], which should help with the code details if someone is motivated
> for implementing this (I know of people on xdp-hints list that wanted
> this LaunchTime feature).
>
> [1] https://github.com/xdp-project/xdp-project/blob/master/areas/tsn/code01_follow_qdisc_TSN_offload.org#tx-time-to-hardware-driver-igc
Nice!
> AFAIK this patchset uses struct xsk_tx_metadata as both TX and
> TX-Completion, right?. It would be "conceivable" to reuse tx_timestamp
> field, but it might be confusing for uAPI end-users. Maybe a union?
Sure, but do we add it later when we add launch time? For now, let's
figure out whether 'tx_timestamp' is the right name for the 'tx
completion timestamp' :-D Later on, we can union it with launch_time?
Powered by blists - more mailing lists